...

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

Documentation: google.golang.org/api/composer/v1beta1

     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 composer provides access to the Cloud Composer API.
     8  //
     9  // For product documentation, see: https://cloud.google.com/composer/
    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/composer/v1beta1"
    27  //	...
    28  //	ctx := context.Background()
    29  //	composerService, err := composer.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  //	composerService, err := composer.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  //	composerService, err := composer.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))
    49  //
    50  // See [google.golang.org/api/option.ClientOption] for details on options.
    51  package composer // import "google.golang.org/api/composer/v1beta1"
    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 = "composer:v1beta1"
    90  const apiName = "composer"
    91  const apiVersion = "v1beta1"
    92  const basePath = "https://composer.googleapis.com/"
    93  const basePathTemplate = "https://composer.UNIVERSE_DOMAIN/"
    94  const mtlsBasePath = "https://composer.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.Environments = NewProjectsLocationsEnvironmentsService(s)
   172  	rs.ImageVersions = NewProjectsLocationsImageVersionsService(s)
   173  	rs.Operations = NewProjectsLocationsOperationsService(s)
   174  	return rs
   175  }
   176  
   177  type ProjectsLocationsService struct {
   178  	s *Service
   179  
   180  	Environments *ProjectsLocationsEnvironmentsService
   181  
   182  	ImageVersions *ProjectsLocationsImageVersionsService
   183  
   184  	Operations *ProjectsLocationsOperationsService
   185  }
   186  
   187  func NewProjectsLocationsEnvironmentsService(s *Service) *ProjectsLocationsEnvironmentsService {
   188  	rs := &ProjectsLocationsEnvironmentsService{s: s}
   189  	rs.UserWorkloadsConfigMaps = NewProjectsLocationsEnvironmentsUserWorkloadsConfigMapsService(s)
   190  	rs.UserWorkloadsSecrets = NewProjectsLocationsEnvironmentsUserWorkloadsSecretsService(s)
   191  	rs.Workloads = NewProjectsLocationsEnvironmentsWorkloadsService(s)
   192  	return rs
   193  }
   194  
   195  type ProjectsLocationsEnvironmentsService struct {
   196  	s *Service
   197  
   198  	UserWorkloadsConfigMaps *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsService
   199  
   200  	UserWorkloadsSecrets *ProjectsLocationsEnvironmentsUserWorkloadsSecretsService
   201  
   202  	Workloads *ProjectsLocationsEnvironmentsWorkloadsService
   203  }
   204  
   205  func NewProjectsLocationsEnvironmentsUserWorkloadsConfigMapsService(s *Service) *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsService {
   206  	rs := &ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsService{s: s}
   207  	return rs
   208  }
   209  
   210  type ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsService struct {
   211  	s *Service
   212  }
   213  
   214  func NewProjectsLocationsEnvironmentsUserWorkloadsSecretsService(s *Service) *ProjectsLocationsEnvironmentsUserWorkloadsSecretsService {
   215  	rs := &ProjectsLocationsEnvironmentsUserWorkloadsSecretsService{s: s}
   216  	return rs
   217  }
   218  
   219  type ProjectsLocationsEnvironmentsUserWorkloadsSecretsService struct {
   220  	s *Service
   221  }
   222  
   223  func NewProjectsLocationsEnvironmentsWorkloadsService(s *Service) *ProjectsLocationsEnvironmentsWorkloadsService {
   224  	rs := &ProjectsLocationsEnvironmentsWorkloadsService{s: s}
   225  	return rs
   226  }
   227  
   228  type ProjectsLocationsEnvironmentsWorkloadsService struct {
   229  	s *Service
   230  }
   231  
   232  func NewProjectsLocationsImageVersionsService(s *Service) *ProjectsLocationsImageVersionsService {
   233  	rs := &ProjectsLocationsImageVersionsService{s: s}
   234  	return rs
   235  }
   236  
   237  type ProjectsLocationsImageVersionsService struct {
   238  	s *Service
   239  }
   240  
   241  func NewProjectsLocationsOperationsService(s *Service) *ProjectsLocationsOperationsService {
   242  	rs := &ProjectsLocationsOperationsService{s: s}
   243  	return rs
   244  }
   245  
   246  type ProjectsLocationsOperationsService struct {
   247  	s *Service
   248  }
   249  
   250  // AirflowMetadataRetentionPolicyConfig: The policy for airflow metadata
   251  // database retention.
   252  type AirflowMetadataRetentionPolicyConfig struct {
   253  	// RetentionDays: Optional. How many days data should be retained for.
   254  	RetentionDays int64 `json:"retentionDays,omitempty"`
   255  	// RetentionMode: Optional. Retention can be either enabled or disabled.
   256  	//
   257  	// Possible values:
   258  	//   "RETENTION_MODE_UNSPECIFIED" - Default mode doesn't change environment
   259  	// parameters.
   260  	//   "RETENTION_MODE_ENABLED" - Retention policy is enabled.
   261  	//   "RETENTION_MODE_DISABLED" - Retention policy is disabled.
   262  	RetentionMode string `json:"retentionMode,omitempty"`
   263  	// ForceSendFields is a list of field names (e.g. "RetentionDays") to
   264  	// unconditionally include in API requests. By default, fields with empty or
   265  	// default values are omitted from API requests. See
   266  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   267  	// details.
   268  	ForceSendFields []string `json:"-"`
   269  	// NullFields is a list of field names (e.g. "RetentionDays") to include in API
   270  	// requests with the JSON null value. By default, fields with empty values are
   271  	// omitted from API requests. See
   272  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   273  	NullFields []string `json:"-"`
   274  }
   275  
   276  func (s *AirflowMetadataRetentionPolicyConfig) MarshalJSON() ([]byte, error) {
   277  	type NoMethod AirflowMetadataRetentionPolicyConfig
   278  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   279  }
   280  
   281  // AllowedIpRange: Allowed IP range with user-provided description.
   282  type AllowedIpRange struct {
   283  	// Description: Optional. User-provided description. It must contain at most
   284  	// 300 characters.
   285  	Description string `json:"description,omitempty"`
   286  	// Value: IP address or range, defined using CIDR notation, of requests that
   287  	// this rule applies to. Examples: `192.168.1.1` or `192.168.0.0/16` or
   288  	// `2001:db8::/32` or `2001:0db8:0000:0042:0000:8a2e:0370:7334`. IP range
   289  	// prefixes should be properly truncated. For example, `1.2.3.4/24` should be
   290  	// truncated to `1.2.3.0/24`. Similarly, for IPv6, `2001:db8::1/32` should be
   291  	// truncated to `2001:db8::/32`.
   292  	Value string `json:"value,omitempty"`
   293  	// ForceSendFields is a list of field names (e.g. "Description") to
   294  	// unconditionally include in API requests. By default, fields with empty or
   295  	// default values are omitted from API requests. See
   296  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   297  	// details.
   298  	ForceSendFields []string `json:"-"`
   299  	// NullFields is a list of field names (e.g. "Description") to include in API
   300  	// requests with the JSON null value. By default, fields with empty values are
   301  	// omitted from API requests. See
   302  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   303  	NullFields []string `json:"-"`
   304  }
   305  
   306  func (s *AllowedIpRange) MarshalJSON() ([]byte, error) {
   307  	type NoMethod AllowedIpRange
   308  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   309  }
   310  
   311  // CheckUpgradeRequest: Request to check whether image upgrade will succeed.
   312  type CheckUpgradeRequest struct {
   313  	// ImageVersion: The version of the software running in the environment. This
   314  	// encapsulates both the version of Cloud Composer functionality and the
   315  	// version of Apache Airflow. It must match the regular expression
   316  	// `composer-([0-9]+(\.[0-9]+\.[0-9]+(-preview\.[0-9]+)?)?|latest)-airflow-([0-9
   317  	// ]+(\.[0-9]+(\.[0-9]+)?)?)`. When used as input, the server also checks if
   318  	// the provided version is supported and denies the request for an unsupported
   319  	// version. The Cloud Composer portion of the image version is a full semantic
   320  	// version (https://semver.org), or an alias in the form of major version
   321  	// number or `latest`. When an alias is provided, the server replaces it with
   322  	// the current Cloud Composer version that satisfies the alias. The Apache
   323  	// Airflow portion of the image version is a full semantic version that points
   324  	// to one of the supported Apache Airflow versions, or an alias in the form of
   325  	// only major or major.minor versions specified. When an alias is provided, the
   326  	// server replaces it with the latest Apache Airflow version that satisfies the
   327  	// alias and is supported in the given Cloud Composer version. In all cases,
   328  	// the resolved image version is stored in the same field. See also version
   329  	// list (/composer/docs/concepts/versioning/composer-versions) and versioning
   330  	// overview (/composer/docs/concepts/versioning/composer-versioning-overview).
   331  	ImageVersion string `json:"imageVersion,omitempty"`
   332  	// ForceSendFields is a list of field names (e.g. "ImageVersion") to
   333  	// unconditionally include in API requests. By default, fields with empty or
   334  	// default values are omitted from API requests. See
   335  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   336  	// details.
   337  	ForceSendFields []string `json:"-"`
   338  	// NullFields is a list of field names (e.g. "ImageVersion") to include in API
   339  	// requests with the JSON null value. By default, fields with empty values are
   340  	// omitted from API requests. See
   341  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   342  	NullFields []string `json:"-"`
   343  }
   344  
   345  func (s *CheckUpgradeRequest) MarshalJSON() ([]byte, error) {
   346  	type NoMethod CheckUpgradeRequest
   347  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   348  }
   349  
   350  // CheckUpgradeResponse: Message containing information about the result of an
   351  // upgrade check operation.
   352  type CheckUpgradeResponse struct {
   353  	// BuildLogUri: Output only. Url for a docker build log of an upgraded image.
   354  	BuildLogUri string `json:"buildLogUri,omitempty"`
   355  	// ContainsPypiModulesConflict: Output only. Whether build has succeeded or
   356  	// failed on modules conflicts.
   357  	//
   358  	// Possible values:
   359  	//   "CONFLICT_RESULT_UNSPECIFIED" - It is unknown whether build had conflicts
   360  	// or not.
   361  	//   "CONFLICT" - There were python packages conflicts.
   362  	//   "NO_CONFLICT" - There were no python packages conflicts.
   363  	ContainsPypiModulesConflict string `json:"containsPypiModulesConflict,omitempty"`
   364  	// ImageVersion: Composer image for which the build was happening.
   365  	ImageVersion string `json:"imageVersion,omitempty"`
   366  	// PypiConflictBuildLogExtract: Output only. Extract from a docker image build
   367  	// log containing information about pypi modules conflicts.
   368  	PypiConflictBuildLogExtract string `json:"pypiConflictBuildLogExtract,omitempty"`
   369  	// PypiDependencies: Pypi dependencies specified in the environment
   370  	// configuration, at the time when the build was triggered.
   371  	PypiDependencies map[string]string `json:"pypiDependencies,omitempty"`
   372  	// ForceSendFields is a list of field names (e.g. "BuildLogUri") to
   373  	// unconditionally include in API requests. By default, fields with empty or
   374  	// default values are omitted from API requests. See
   375  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   376  	// details.
   377  	ForceSendFields []string `json:"-"`
   378  	// NullFields is a list of field names (e.g. "BuildLogUri") to include in API
   379  	// requests with the JSON null value. By default, fields with empty values are
   380  	// omitted from API requests. See
   381  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   382  	NullFields []string `json:"-"`
   383  }
   384  
   385  func (s *CheckUpgradeResponse) MarshalJSON() ([]byte, error) {
   386  	type NoMethod CheckUpgradeResponse
   387  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   388  }
   389  
   390  // CidrBlock: CIDR block with an optional name.
   391  type CidrBlock struct {
   392  	// CidrBlock: CIDR block that must be specified in CIDR notation.
   393  	CidrBlock string `json:"cidrBlock,omitempty"`
   394  	// DisplayName: User-defined name that identifies the CIDR block.
   395  	DisplayName string `json:"displayName,omitempty"`
   396  	// ForceSendFields is a list of field names (e.g. "CidrBlock") to
   397  	// unconditionally include in API requests. By default, fields with empty or
   398  	// default values are omitted from API requests. See
   399  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   400  	// details.
   401  	ForceSendFields []string `json:"-"`
   402  	// NullFields is a list of field names (e.g. "CidrBlock") to include in API
   403  	// requests with the JSON null value. By default, fields with empty values are
   404  	// omitted from API requests. See
   405  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   406  	NullFields []string `json:"-"`
   407  }
   408  
   409  func (s *CidrBlock) MarshalJSON() ([]byte, error) {
   410  	type NoMethod CidrBlock
   411  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   412  }
   413  
   414  // CloudDataLineageIntegration: Configuration for Cloud Data Lineage
   415  // integration.
   416  type CloudDataLineageIntegration struct {
   417  	// Enabled: Optional. Whether or not Cloud Data Lineage integration is enabled.
   418  	Enabled bool `json:"enabled,omitempty"`
   419  	// ForceSendFields is a list of field names (e.g. "Enabled") to unconditionally
   420  	// include in API requests. By default, fields with empty or default values are
   421  	// omitted from API requests. See
   422  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   423  	// details.
   424  	ForceSendFields []string `json:"-"`
   425  	// NullFields is a list of field names (e.g. "Enabled") to include in API
   426  	// requests with the JSON null value. By default, fields with empty values are
   427  	// omitted from API requests. See
   428  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   429  	NullFields []string `json:"-"`
   430  }
   431  
   432  func (s *CloudDataLineageIntegration) MarshalJSON() ([]byte, error) {
   433  	type NoMethod CloudDataLineageIntegration
   434  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   435  }
   436  
   437  // ComposerWorkload: Information about a single workload.
   438  type ComposerWorkload struct {
   439  	// Name: Name of a workload.
   440  	Name string `json:"name,omitempty"`
   441  	// Status: Output only. Status of a workload.
   442  	Status *ComposerWorkloadStatus `json:"status,omitempty"`
   443  	// Type: Type of a workload.
   444  	//
   445  	// Possible values:
   446  	//   "COMPOSER_WORKLOAD_TYPE_UNSPECIFIED" - Not able to determine the type of
   447  	// the workload.
   448  	//   "CELERY_WORKER" - Celery worker.
   449  	//   "KUBERNETES_WORKER" - Kubernetes worker.
   450  	//   "KUBERNETES_OPERATOR_POD" - Workload created by Kubernetes Pod Operator.
   451  	//   "SCHEDULER" - Airflow scheduler.
   452  	//   "DAG_PROCESSOR" - Airflow Dag processor.
   453  	//   "TRIGGERER" - Airflow triggerer.
   454  	//   "WEB_SERVER" - Airflow web server UI.
   455  	//   "REDIS" - Redis.
   456  	Type string `json:"type,omitempty"`
   457  	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
   458  	// include in API requests. By default, fields with empty or default values are
   459  	// omitted from API requests. See
   460  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   461  	// details.
   462  	ForceSendFields []string `json:"-"`
   463  	// NullFields is a list of field names (e.g. "Name") to include in API requests
   464  	// with the JSON null value. By default, fields with empty values are omitted
   465  	// from API requests. See
   466  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   467  	NullFields []string `json:"-"`
   468  }
   469  
   470  func (s *ComposerWorkload) MarshalJSON() ([]byte, error) {
   471  	type NoMethod ComposerWorkload
   472  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   473  }
   474  
   475  // ComposerWorkloadStatus: Workload status.
   476  type ComposerWorkloadStatus struct {
   477  	// DetailedStatusMessage: Output only. Detailed message of the status.
   478  	DetailedStatusMessage string `json:"detailedStatusMessage,omitempty"`
   479  	// State: Output only. Workload state.
   480  	//
   481  	// Possible values:
   482  	//   "COMPOSER_WORKLOAD_STATE_UNSPECIFIED" - Not able to determine the status
   483  	// of the workload.
   484  	//   "PENDING" - Workload is in pending state and has not yet started.
   485  	//   "OK" - Workload is running fine.
   486  	//   "WARNING" - Workload is running but there are some non-critical problems.
   487  	//   "ERROR" - Workload is not running due to an error.
   488  	//   "SUCCEEDED" - Workload has finished execution with success.
   489  	//   "FAILED" - Workload has finished execution with failure.
   490  	State string `json:"state,omitempty"`
   491  	// StatusMessage: Output only. Text to provide more descriptive status.
   492  	StatusMessage string `json:"statusMessage,omitempty"`
   493  	// ForceSendFields is a list of field names (e.g. "DetailedStatusMessage") to
   494  	// unconditionally include in API requests. By default, fields with empty or
   495  	// default values are omitted from API requests. See
   496  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   497  	// details.
   498  	ForceSendFields []string `json:"-"`
   499  	// NullFields is a list of field names (e.g. "DetailedStatusMessage") to
   500  	// include in API requests with the JSON null value. By default, fields with
   501  	// empty values are omitted from API requests. See
   502  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   503  	NullFields []string `json:"-"`
   504  }
   505  
   506  func (s *ComposerWorkloadStatus) MarshalJSON() ([]byte, error) {
   507  	type NoMethod ComposerWorkloadStatus
   508  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   509  }
   510  
   511  // DagProcessorResource: Configuration for resources used by Airflow DAG
   512  // processors. This field is supported for Cloud Composer environments in
   513  // versions composer-3.*.*-airflow-*.*.* and newer.
   514  type DagProcessorResource struct {
   515  	// Count: Optional. The number of DAG processors. If not provided or set to 0,
   516  	// a single DAG processor instance will be created.
   517  	Count int64 `json:"count,omitempty"`
   518  	// Cpu: Optional. CPU request and limit for a single Airflow DAG processor
   519  	// replica.
   520  	Cpu float64 `json:"cpu,omitempty"`
   521  	// MemoryGb: Optional. Memory (GB) request and limit for a single Airflow DAG
   522  	// processor replica.
   523  	MemoryGb float64 `json:"memoryGb,omitempty"`
   524  	// StorageGb: Optional. Storage (GB) request and limit for a single Airflow DAG
   525  	// processor replica.
   526  	StorageGb float64 `json:"storageGb,omitempty"`
   527  	// ForceSendFields is a list of field names (e.g. "Count") to unconditionally
   528  	// include in API requests. By default, fields with empty or default values are
   529  	// omitted from API requests. See
   530  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   531  	// details.
   532  	ForceSendFields []string `json:"-"`
   533  	// NullFields is a list of field names (e.g. "Count") to include in API
   534  	// requests with the JSON null value. By default, fields with empty values are
   535  	// omitted from API requests. See
   536  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   537  	NullFields []string `json:"-"`
   538  }
   539  
   540  func (s *DagProcessorResource) MarshalJSON() ([]byte, error) {
   541  	type NoMethod DagProcessorResource
   542  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   543  }
   544  
   545  func (s *DagProcessorResource) UnmarshalJSON(data []byte) error {
   546  	type NoMethod DagProcessorResource
   547  	var s1 struct {
   548  		Cpu       gensupport.JSONFloat64 `json:"cpu"`
   549  		MemoryGb  gensupport.JSONFloat64 `json:"memoryGb"`
   550  		StorageGb gensupport.JSONFloat64 `json:"storageGb"`
   551  		*NoMethod
   552  	}
   553  	s1.NoMethod = (*NoMethod)(s)
   554  	if err := json.Unmarshal(data, &s1); err != nil {
   555  		return err
   556  	}
   557  	s.Cpu = float64(s1.Cpu)
   558  	s.MemoryGb = float64(s1.MemoryGb)
   559  	s.StorageGb = float64(s1.StorageGb)
   560  	return nil
   561  }
   562  
   563  // DataRetentionConfig: The configuration setting for Airflow database data
   564  // retention mechanism.
   565  type DataRetentionConfig struct {
   566  	// AirflowDatabaseRetentionDays: Optional. The number of days describing for
   567  	// how long to store event-based records in airflow database. If the retention
   568  	// mechanism is enabled this value must be a positive integer otherwise, value
   569  	// should be set to 0.
   570  	AirflowDatabaseRetentionDays int64 `json:"airflowDatabaseRetentionDays,omitempty"`
   571  	// AirflowMetadataRetentionConfig: Optional. The retention policy for airflow
   572  	// metadata database.
   573  	AirflowMetadataRetentionConfig *AirflowMetadataRetentionPolicyConfig `json:"airflowMetadataRetentionConfig,omitempty"`
   574  	// TaskLogsRetentionConfig: Optional. The configuration settings for task logs
   575  	// retention
   576  	TaskLogsRetentionConfig *TaskLogsRetentionConfig `json:"taskLogsRetentionConfig,omitempty"`
   577  	// ForceSendFields is a list of field names (e.g.
   578  	// "AirflowDatabaseRetentionDays") to unconditionally include in API requests.
   579  	// By default, fields with empty or default values are omitted from API
   580  	// requests. See https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields
   581  	// for more details.
   582  	ForceSendFields []string `json:"-"`
   583  	// NullFields is a list of field names (e.g. "AirflowDatabaseRetentionDays") to
   584  	// include in API requests with the JSON null value. By default, fields with
   585  	// empty values are omitted from API requests. See
   586  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   587  	NullFields []string `json:"-"`
   588  }
   589  
   590  func (s *DataRetentionConfig) MarshalJSON() ([]byte, error) {
   591  	type NoMethod DataRetentionConfig
   592  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   593  }
   594  
   595  // DatabaseConfig: The configuration of Cloud SQL instance that is used by the
   596  // Apache Airflow software.
   597  type DatabaseConfig struct {
   598  	// MachineType: Optional. Cloud SQL machine type used by Airflow database. It
   599  	// has to be one of: db-n1-standard-2, db-n1-standard-4, db-n1-standard-8 or
   600  	// db-n1-standard-16. If not specified, db-n1-standard-2 will be used.
   601  	// Supported for Cloud Composer environments in versions
   602  	// composer-1.*.*-airflow-*.*.*.
   603  	MachineType string `json:"machineType,omitempty"`
   604  	// Zone: Optional. The Compute Engine zone where the Airflow database is
   605  	// created. If zone is provided, it must be in the region selected for the
   606  	// environment. If zone is not provided, a zone is automatically selected. The
   607  	// zone can only be set during environment creation. Supported for Cloud
   608  	// Composer environments in versions composer-2.*.*-airflow-*.*.*.
   609  	Zone string `json:"zone,omitempty"`
   610  	// ForceSendFields is a list of field names (e.g. "MachineType") to
   611  	// unconditionally include in API requests. By default, fields with empty or
   612  	// default values are omitted from API requests. See
   613  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   614  	// details.
   615  	ForceSendFields []string `json:"-"`
   616  	// NullFields is a list of field names (e.g. "MachineType") to include in API
   617  	// requests with the JSON null value. By default, fields with empty values are
   618  	// omitted from API requests. See
   619  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   620  	NullFields []string `json:"-"`
   621  }
   622  
   623  func (s *DatabaseConfig) MarshalJSON() ([]byte, error) {
   624  	type NoMethod DatabaseConfig
   625  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   626  }
   627  
   628  // DatabaseFailoverRequest: Request to trigger database failover (only for
   629  // highly resilient environments).
   630  type DatabaseFailoverRequest struct {
   631  }
   632  
   633  // DatabaseFailoverResponse: Response for DatabaseFailoverRequest.
   634  type DatabaseFailoverResponse struct {
   635  }
   636  
   637  // Date: Represents a whole or partial calendar date, such as a birthday. The
   638  // time of day and time zone are either specified elsewhere or are
   639  // insignificant. The date is relative to the Gregorian Calendar. This can
   640  // represent one of the following: * A full date, with non-zero year, month,
   641  // and day values. * A month and day, with a zero year (for example, an
   642  // anniversary). * A year on its own, with a zero month and a zero day. * A
   643  // year and month, with a zero day (for example, a credit card expiration
   644  // date). Related types: * google.type.TimeOfDay * google.type.DateTime *
   645  // google.protobuf.Timestamp
   646  type Date struct {
   647  	// Day: Day of a month. Must be from 1 to 31 and valid for the year and month,
   648  	// or 0 to specify a year by itself or a year and month where the day isn't
   649  	// significant.
   650  	Day int64 `json:"day,omitempty"`
   651  	// Month: Month of a year. Must be from 1 to 12, or 0 to specify a year without
   652  	// a month and day.
   653  	Month int64 `json:"month,omitempty"`
   654  	// Year: Year of the date. Must be from 1 to 9999, or 0 to specify a date
   655  	// without a year.
   656  	Year int64 `json:"year,omitempty"`
   657  	// ForceSendFields is a list of field names (e.g. "Day") to unconditionally
   658  	// include in API requests. By default, fields with empty or default values are
   659  	// omitted from API requests. See
   660  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   661  	// details.
   662  	ForceSendFields []string `json:"-"`
   663  	// NullFields is a list of field names (e.g. "Day") to include in API requests
   664  	// with the JSON null value. By default, fields with empty values are omitted
   665  	// from API requests. See
   666  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   667  	NullFields []string `json:"-"`
   668  }
   669  
   670  func (s *Date) MarshalJSON() ([]byte, error) {
   671  	type NoMethod Date
   672  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   673  }
   674  
   675  // Empty: A generic empty message that you can re-use to avoid defining
   676  // duplicated empty messages in your APIs. A typical example is to use it as
   677  // the request or the response type of an API method. For instance: service Foo
   678  // { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); }
   679  type Empty struct {
   680  	// ServerResponse contains the HTTP response code and headers from the server.
   681  	googleapi.ServerResponse `json:"-"`
   682  }
   683  
   684  // EncryptionConfig: The encryption options for the Cloud Composer environment
   685  // and its dependencies. Supported for Cloud Composer environments in versions
   686  // composer-1.*.*-airflow-*.*.*.
   687  type EncryptionConfig struct {
   688  	// KmsKeyName: Optional. Customer-managed Encryption Key available through
   689  	// Google's Key Management Service. Cannot be updated. If not specified,
   690  	// Google-managed key will be used.
   691  	KmsKeyName string `json:"kmsKeyName,omitempty"`
   692  	// ForceSendFields is a list of field names (e.g. "KmsKeyName") to
   693  	// unconditionally include in API requests. By default, fields with empty or
   694  	// default values are omitted from API requests. See
   695  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   696  	// details.
   697  	ForceSendFields []string `json:"-"`
   698  	// NullFields is a list of field names (e.g. "KmsKeyName") to include in API
   699  	// requests with the JSON null value. By default, fields with empty values are
   700  	// omitted from API requests. See
   701  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   702  	NullFields []string `json:"-"`
   703  }
   704  
   705  func (s *EncryptionConfig) MarshalJSON() ([]byte, error) {
   706  	type NoMethod EncryptionConfig
   707  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   708  }
   709  
   710  // Environment: An environment for running orchestration tasks.
   711  type Environment struct {
   712  	// Config: Configuration parameters for this environment.
   713  	Config *EnvironmentConfig `json:"config,omitempty"`
   714  	// CreateTime: Output only. The time at which this environment was created.
   715  	CreateTime string `json:"createTime,omitempty"`
   716  	// Labels: Optional. User-defined labels for this environment. The labels map
   717  	// can contain no more than 64 entries. Entries of the labels map are UTF8
   718  	// strings that comply with the following restrictions: * Keys must conform to
   719  	// regexp: \p{Ll}\p{Lo}{0,62} * Values must conform to regexp:
   720  	// [\p{Ll}\p{Lo}\p{N}_-]{0,63} * Both keys and values are additionally
   721  	// constrained to be <= 128 bytes in size.
   722  	Labels map[string]string `json:"labels,omitempty"`
   723  	// Name: The resource name of the environment, in the form:
   724  	// "projects/{projectId}/locations/{locationId}/environments/{environmentId}"
   725  	// EnvironmentId must start with a lowercase letter followed by up to 63
   726  	// lowercase letters, numbers, or hyphens, and cannot end with a hyphen.
   727  	Name string `json:"name,omitempty"`
   728  	// SatisfiesPzs: Output only. Reserved for future use.
   729  	SatisfiesPzs bool `json:"satisfiesPzs,omitempty"`
   730  	// State: The current state of the environment.
   731  	//
   732  	// Possible values:
   733  	//   "STATE_UNSPECIFIED" - The state of the environment is unknown.
   734  	//   "CREATING" - The environment is in the process of being created.
   735  	//   "RUNNING" - The environment is currently running and healthy. It is ready
   736  	// for use.
   737  	//   "UPDATING" - The environment is being updated. It remains usable but
   738  	// cannot receive additional update requests or be deleted at this time.
   739  	//   "DELETING" - The environment is undergoing deletion. It cannot be used.
   740  	//   "ERROR" - The environment has encountered an error and cannot be used.
   741  	State string `json:"state,omitempty"`
   742  	// StorageConfig: Optional. Storage configuration for this environment.
   743  	StorageConfig *StorageConfig `json:"storageConfig,omitempty"`
   744  	// UpdateTime: Output only. The time at which this environment was last
   745  	// modified.
   746  	UpdateTime string `json:"updateTime,omitempty"`
   747  	// Uuid: Output only. The UUID (Universally Unique IDentifier) associated with
   748  	// this environment. This value is generated when the environment is created.
   749  	Uuid string `json:"uuid,omitempty"`
   750  
   751  	// ServerResponse contains the HTTP response code and headers from the server.
   752  	googleapi.ServerResponse `json:"-"`
   753  	// ForceSendFields is a list of field names (e.g. "Config") to unconditionally
   754  	// include in API requests. By default, fields with empty or default values are
   755  	// omitted from API requests. See
   756  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   757  	// details.
   758  	ForceSendFields []string `json:"-"`
   759  	// NullFields is a list of field names (e.g. "Config") to include in API
   760  	// requests with the JSON null value. By default, fields with empty values are
   761  	// omitted from API requests. See
   762  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   763  	NullFields []string `json:"-"`
   764  }
   765  
   766  func (s *Environment) MarshalJSON() ([]byte, error) {
   767  	type NoMethod Environment
   768  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   769  }
   770  
   771  // EnvironmentConfig: Configuration information for an environment.
   772  type EnvironmentConfig struct {
   773  	// AirflowByoidUri: Output only. The 'bring your own identity' variant of the
   774  	// URI of the Apache Airflow Web UI hosted within this environment, to be
   775  	// accessed with external identities using workforce identity federation (see
   776  	// Access environments with workforce identity federation
   777  	// (/composer/docs/composer-2/access-environments-with-workforce-identity-federa
   778  	// tion)).
   779  	AirflowByoidUri string `json:"airflowByoidUri,omitempty"`
   780  	// AirflowUri: Output only. The URI of the Apache Airflow Web UI hosted within
   781  	// this environment (see Airflow web interface
   782  	// (/composer/docs/how-to/accessing/airflow-web-interface)).
   783  	AirflowUri string `json:"airflowUri,omitempty"`
   784  	// DagGcsPrefix: Output only. The Cloud Storage prefix of the DAGs for this
   785  	// environment. Although Cloud Storage objects reside in a flat namespace, a
   786  	// hierarchical file tree can be simulated using "/"-delimited object name
   787  	// prefixes. DAG objects for this environment reside in a simulated directory
   788  	// with the given prefix.
   789  	DagGcsPrefix string `json:"dagGcsPrefix,omitempty"`
   790  	// DataRetentionConfig: Optional. The configuration setting for Airflow
   791  	// database data retention mechanism.
   792  	DataRetentionConfig *DataRetentionConfig `json:"dataRetentionConfig,omitempty"`
   793  	// DatabaseConfig: Optional. The configuration settings for Cloud SQL instance
   794  	// used internally by Apache Airflow software.
   795  	DatabaseConfig *DatabaseConfig `json:"databaseConfig,omitempty"`
   796  	// EncryptionConfig: Optional. The encryption options for the Cloud Composer
   797  	// environment and its dependencies. Cannot be updated.
   798  	EncryptionConfig *EncryptionConfig `json:"encryptionConfig,omitempty"`
   799  	// EnvironmentSize: Optional. The size of the Cloud Composer environment. This
   800  	// field is supported for Cloud Composer environments in versions
   801  	// composer-2.*.*-airflow-*.*.* and newer.
   802  	//
   803  	// Possible values:
   804  	//   "ENVIRONMENT_SIZE_UNSPECIFIED" - The size of the environment is
   805  	// unspecified.
   806  	//   "ENVIRONMENT_SIZE_SMALL" - The environment size is small.
   807  	//   "ENVIRONMENT_SIZE_MEDIUM" - The environment size is medium.
   808  	//   "ENVIRONMENT_SIZE_LARGE" - The environment size is large.
   809  	EnvironmentSize string `json:"environmentSize,omitempty"`
   810  	// GkeCluster: Output only. The Kubernetes Engine cluster used to run this
   811  	// environment.
   812  	GkeCluster string `json:"gkeCluster,omitempty"`
   813  	// MaintenanceWindow: Optional. The maintenance window is the period when Cloud
   814  	// Composer components may undergo maintenance. It is defined so that
   815  	// maintenance is not executed during peak hours or critical time periods. The
   816  	// system will not be under maintenance for every occurrence of this window,
   817  	// but when maintenance is planned, it will be scheduled during the window. The
   818  	// maintenance window period must encompass at least 12 hours per week. This
   819  	// may be split into multiple chunks, each with a size of at least 4 hours. If
   820  	// this value is omitted, the default value for maintenance window is applied.
   821  	// By default, maintenance windows are from 00:00:00 to 04:00:00 (GMT) on
   822  	// Friday, Saturday, and Sunday every week.
   823  	MaintenanceWindow *MaintenanceWindow `json:"maintenanceWindow,omitempty"`
   824  	// MasterAuthorizedNetworksConfig: Optional. The configuration options for GKE
   825  	// cluster master authorized networks. By default master authorized networks
   826  	// feature is: - in case of private environment: enabled with no external
   827  	// networks allowlisted. - in case of public environment: disabled.
   828  	MasterAuthorizedNetworksConfig *MasterAuthorizedNetworksConfig `json:"masterAuthorizedNetworksConfig,omitempty"`
   829  	// NodeConfig: The configuration used for the Kubernetes Engine cluster.
   830  	NodeConfig *NodeConfig `json:"nodeConfig,omitempty"`
   831  	// NodeCount: The number of nodes in the Kubernetes Engine cluster that will be
   832  	// used to run this environment. This field is supported for Cloud Composer
   833  	// environments in versions composer-1.*.*-airflow-*.*.*.
   834  	NodeCount int64 `json:"nodeCount,omitempty"`
   835  	// PrivateEnvironmentConfig: The configuration used for the Private IP Cloud
   836  	// Composer environment.
   837  	PrivateEnvironmentConfig *PrivateEnvironmentConfig `json:"privateEnvironmentConfig,omitempty"`
   838  	// RecoveryConfig: Optional. The Recovery settings configuration of an
   839  	// environment. This field is supported for Cloud Composer environments in
   840  	// versions composer-2.*.*-airflow-*.*.* and newer.
   841  	RecoveryConfig *RecoveryConfig `json:"recoveryConfig,omitempty"`
   842  	// ResilienceMode: Optional. Resilience mode of the Cloud Composer Environment.
   843  	// This field is supported for Cloud Composer environments in versions
   844  	// composer-2.2.0-airflow-*.*.* and newer.
   845  	//
   846  	// Possible values:
   847  	//   "RESILIENCE_MODE_UNSPECIFIED" - Default mode doesn't change environment
   848  	// parameters.
   849  	//   "HIGH_RESILIENCE" - Enabled High Resilience mode, including Cloud SQL HA.
   850  	ResilienceMode string `json:"resilienceMode,omitempty"`
   851  	// SoftwareConfig: The configuration settings for software inside the
   852  	// environment.
   853  	SoftwareConfig *SoftwareConfig `json:"softwareConfig,omitempty"`
   854  	// WebServerConfig: Optional. The configuration settings for the Airflow web
   855  	// server App Engine instance. This field is supported for Cloud Composer
   856  	// environments in versions composer-1.*.*-airflow-*.*.*.
   857  	WebServerConfig *WebServerConfig `json:"webServerConfig,omitempty"`
   858  	// WebServerNetworkAccessControl: Optional. The network-level access control
   859  	// policy for the Airflow web server. If unspecified, no network-level access
   860  	// restrictions will be applied.
   861  	WebServerNetworkAccessControl *WebServerNetworkAccessControl `json:"webServerNetworkAccessControl,omitempty"`
   862  	// WorkloadsConfig: Optional. The workloads configuration settings for the GKE
   863  	// cluster associated with the Cloud Composer environment. The GKE cluster runs
   864  	// Airflow scheduler, web server and workers workloads. This field is supported
   865  	// for Cloud Composer environments in versions composer-2.*.*-airflow-*.*.* and
   866  	// newer.
   867  	WorkloadsConfig *WorkloadsConfig `json:"workloadsConfig,omitempty"`
   868  	// ForceSendFields is a list of field names (e.g. "AirflowByoidUri") to
   869  	// unconditionally include in API requests. By default, fields with empty or
   870  	// default values are omitted from API requests. See
   871  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   872  	// details.
   873  	ForceSendFields []string `json:"-"`
   874  	// NullFields is a list of field names (e.g. "AirflowByoidUri") to include in
   875  	// API requests with the JSON null value. By default, fields with empty values
   876  	// are omitted from API requests. See
   877  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   878  	NullFields []string `json:"-"`
   879  }
   880  
   881  func (s *EnvironmentConfig) MarshalJSON() ([]byte, error) {
   882  	type NoMethod EnvironmentConfig
   883  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   884  }
   885  
   886  // ExecuteAirflowCommandRequest: Execute Airflow Command request.
   887  type ExecuteAirflowCommandRequest struct {
   888  	// Command: Airflow command.
   889  	Command string `json:"command,omitempty"`
   890  	// Parameters: Parameters for the Airflow command/subcommand as an array of
   891  	// arguments. It may contain positional arguments like `["my-dag-id"]`,
   892  	// key-value parameters like `["--foo=bar"]` or `["--foo","bar"]`, or other
   893  	// flags like `["-f"]`.
   894  	Parameters []string `json:"parameters,omitempty"`
   895  	// Subcommand: Airflow subcommand.
   896  	Subcommand string `json:"subcommand,omitempty"`
   897  	// ForceSendFields is a list of field names (e.g. "Command") to unconditionally
   898  	// include in API requests. By default, fields with empty or default values are
   899  	// omitted from API requests. See
   900  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   901  	// details.
   902  	ForceSendFields []string `json:"-"`
   903  	// NullFields is a list of field names (e.g. "Command") to include in API
   904  	// requests with the JSON null value. By default, fields with empty values are
   905  	// omitted from API requests. See
   906  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   907  	NullFields []string `json:"-"`
   908  }
   909  
   910  func (s *ExecuteAirflowCommandRequest) MarshalJSON() ([]byte, error) {
   911  	type NoMethod ExecuteAirflowCommandRequest
   912  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   913  }
   914  
   915  // ExecuteAirflowCommandResponse: Response to ExecuteAirflowCommandRequest.
   916  type ExecuteAirflowCommandResponse struct {
   917  	// Error: Error message. Empty if there was no error.
   918  	Error string `json:"error,omitempty"`
   919  	// ExecutionId: The unique ID of the command execution for polling.
   920  	ExecutionId string `json:"executionId,omitempty"`
   921  	// Pod: The name of the pod where the command is executed.
   922  	Pod string `json:"pod,omitempty"`
   923  	// PodNamespace: The namespace of the pod where the command is executed.
   924  	PodNamespace string `json:"podNamespace,omitempty"`
   925  
   926  	// ServerResponse contains the HTTP response code and headers from the server.
   927  	googleapi.ServerResponse `json:"-"`
   928  	// ForceSendFields is a list of field names (e.g. "Error") to unconditionally
   929  	// include in API requests. By default, fields with empty or default values are
   930  	// omitted from API requests. See
   931  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   932  	// details.
   933  	ForceSendFields []string `json:"-"`
   934  	// NullFields is a list of field names (e.g. "Error") to include in API
   935  	// requests with the JSON null value. By default, fields with empty values are
   936  	// omitted from API requests. See
   937  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   938  	NullFields []string `json:"-"`
   939  }
   940  
   941  func (s *ExecuteAirflowCommandResponse) MarshalJSON() ([]byte, error) {
   942  	type NoMethod ExecuteAirflowCommandResponse
   943  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   944  }
   945  
   946  // ExitInfo: Information about how a command ended.
   947  type ExitInfo struct {
   948  	// Error: Error message. Empty if there was no error.
   949  	Error string `json:"error,omitempty"`
   950  	// ExitCode: The exit code from the command execution.
   951  	ExitCode int64 `json:"exitCode,omitempty"`
   952  	// ForceSendFields is a list of field names (e.g. "Error") to unconditionally
   953  	// include in API requests. By default, fields with empty or default values are
   954  	// omitted from API requests. See
   955  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   956  	// details.
   957  	ForceSendFields []string `json:"-"`
   958  	// NullFields is a list of field names (e.g. "Error") to include in API
   959  	// requests with the JSON null value. By default, fields with empty values are
   960  	// omitted from API requests. See
   961  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   962  	NullFields []string `json:"-"`
   963  }
   964  
   965  func (s *ExitInfo) MarshalJSON() ([]byte, error) {
   966  	type NoMethod ExitInfo
   967  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   968  }
   969  
   970  // FetchDatabasePropertiesResponse: Response for
   971  // FetchDatabasePropertiesRequest.
   972  type FetchDatabasePropertiesResponse struct {
   973  	// IsFailoverReplicaAvailable: The availability status of the failover replica.
   974  	// A false status indicates that the failover replica is out of sync. The
   975  	// primary instance can only fail over to the failover replica when the status
   976  	// is true.
   977  	IsFailoverReplicaAvailable bool `json:"isFailoverReplicaAvailable,omitempty"`
   978  	// PrimaryGceZone: The Compute Engine zone that the instance is currently
   979  	// serving from.
   980  	PrimaryGceZone string `json:"primaryGceZone,omitempty"`
   981  	// SecondaryGceZone: The Compute Engine zone that the failover instance is
   982  	// currently serving from for a regional Cloud SQL instance.
   983  	SecondaryGceZone string `json:"secondaryGceZone,omitempty"`
   984  
   985  	// ServerResponse contains the HTTP response code and headers from the server.
   986  	googleapi.ServerResponse `json:"-"`
   987  	// ForceSendFields is a list of field names (e.g. "IsFailoverReplicaAvailable")
   988  	// to unconditionally include in API requests. By default, fields with empty or
   989  	// default values are omitted from API requests. See
   990  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   991  	// details.
   992  	ForceSendFields []string `json:"-"`
   993  	// NullFields is a list of field names (e.g. "IsFailoverReplicaAvailable") to
   994  	// include in API requests with the JSON null value. By default, fields with
   995  	// empty values are omitted from API requests. See
   996  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   997  	NullFields []string `json:"-"`
   998  }
   999  
  1000  func (s *FetchDatabasePropertiesResponse) MarshalJSON() ([]byte, error) {
  1001  	type NoMethod FetchDatabasePropertiesResponse
  1002  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1003  }
  1004  
  1005  // IPAllocationPolicy: Configuration for controlling how IPs are allocated in
  1006  // the GKE cluster.
  1007  type IPAllocationPolicy struct {
  1008  	// ClusterIpv4CidrBlock: Optional. The IP address range used to allocate IP
  1009  	// addresses to pods in the cluster. For Cloud Composer environments in
  1010  	// versions composer-1.*.*-airflow-*.*.*, this field is applicable only when
  1011  	// `use_ip_aliases` is true. Set to blank to have GKE choose a range with the
  1012  	// default size. Set to /netmask (e.g. `/14`) to have GKE choose a range with a
  1013  	// specific netmask. Set to a CIDR
  1014  	// (https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) notation
  1015  	// (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g. `10.0.0.0/8`,
  1016  	// `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range to use. Specify
  1017  	// `cluster_secondary_range_name` or `cluster_ipv4_cidr_block` but not both.
  1018  	ClusterIpv4CidrBlock string `json:"clusterIpv4CidrBlock,omitempty"`
  1019  	// ClusterSecondaryRangeName: Optional. The name of the cluster's secondary
  1020  	// range used to allocate IP addresses to pods. Specify either
  1021  	// `cluster_secondary_range_name` or `cluster_ipv4_cidr_block` but not both.
  1022  	// For Cloud Composer environments in versions composer-1.*.*-airflow-*.*.*,
  1023  	// this field is applicable only when `use_ip_aliases` is true.
  1024  	ClusterSecondaryRangeName string `json:"clusterSecondaryRangeName,omitempty"`
  1025  	// ServicesIpv4CidrBlock: Optional. The IP address range of the services IP
  1026  	// addresses in this cluster. For Cloud Composer environments in versions
  1027  	// composer-1.*.*-airflow-*.*.*, this field is applicable only when
  1028  	// `use_ip_aliases` is true. Set to blank to have GKE choose a range with the
  1029  	// default size. Set to /netmask (e.g. `/14`) to have GKE choose a range with a
  1030  	// specific netmask. Set to a CIDR
  1031  	// (https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) notation
  1032  	// (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g. `10.0.0.0/8`,
  1033  	// `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range to use. Specify
  1034  	// `services_secondary_range_name` or `services_ipv4_cidr_block` but not both.
  1035  	ServicesIpv4CidrBlock string `json:"servicesIpv4CidrBlock,omitempty"`
  1036  	// ServicesSecondaryRangeName: Optional. The name of the services' secondary
  1037  	// range used to allocate IP addresses to the cluster. Specify either
  1038  	// `services_secondary_range_name` or `services_ipv4_cidr_block` but not both.
  1039  	// For Cloud Composer environments in versions composer-1.*.*-airflow-*.*.*,
  1040  	// this field is applicable only when `use_ip_aliases` is true.
  1041  	ServicesSecondaryRangeName string `json:"servicesSecondaryRangeName,omitempty"`
  1042  	// UseIpAliases: Optional. Whether or not to enable Alias IPs in the GKE
  1043  	// cluster. If `true`, a VPC-native cluster is created. This field is only
  1044  	// supported for Cloud Composer environments in versions
  1045  	// composer-1.*.*-airflow-*.*.*. Environments in newer versions always use
  1046  	// VPC-native GKE clusters.
  1047  	UseIpAliases bool `json:"useIpAliases,omitempty"`
  1048  	// ForceSendFields is a list of field names (e.g. "ClusterIpv4CidrBlock") to
  1049  	// unconditionally include in API requests. By default, fields with empty or
  1050  	// default values are omitted from API requests. See
  1051  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1052  	// details.
  1053  	ForceSendFields []string `json:"-"`
  1054  	// NullFields is a list of field names (e.g. "ClusterIpv4CidrBlock") to include
  1055  	// in API requests with the JSON null value. By default, fields with empty
  1056  	// values are omitted from API requests. See
  1057  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1058  	NullFields []string `json:"-"`
  1059  }
  1060  
  1061  func (s *IPAllocationPolicy) MarshalJSON() ([]byte, error) {
  1062  	type NoMethod IPAllocationPolicy
  1063  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1064  }
  1065  
  1066  // ImageVersion: Image Version information
  1067  type ImageVersion struct {
  1068  	// CreationDisabled: Whether it is impossible to create an environment with the
  1069  	// image version.
  1070  	CreationDisabled bool `json:"creationDisabled,omitempty"`
  1071  	// ImageVersionId: The string identifier of the ImageVersion, in the form:
  1072  	// "composer-x.y.z-airflow-a.b.c"
  1073  	ImageVersionId string `json:"imageVersionId,omitempty"`
  1074  	// IsDefault: Whether this is the default ImageVersion used by Composer during
  1075  	// environment creation if no input ImageVersion is specified.
  1076  	IsDefault bool `json:"isDefault,omitempty"`
  1077  	// ReleaseDate: The date of the version release.
  1078  	ReleaseDate *Date `json:"releaseDate,omitempty"`
  1079  	// SupportedPythonVersions: supported python versions
  1080  	SupportedPythonVersions []string `json:"supportedPythonVersions,omitempty"`
  1081  	// UpgradeDisabled: Whether it is impossible to upgrade an environment running
  1082  	// with the image version.
  1083  	UpgradeDisabled bool `json:"upgradeDisabled,omitempty"`
  1084  	// ForceSendFields is a list of field names (e.g. "CreationDisabled") to
  1085  	// unconditionally include in API requests. By default, fields with empty or
  1086  	// default values are omitted from API requests. See
  1087  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1088  	// details.
  1089  	ForceSendFields []string `json:"-"`
  1090  	// NullFields is a list of field names (e.g. "CreationDisabled") to include in
  1091  	// API requests with the JSON null value. By default, fields with empty values
  1092  	// are omitted from API requests. See
  1093  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1094  	NullFields []string `json:"-"`
  1095  }
  1096  
  1097  func (s *ImageVersion) MarshalJSON() ([]byte, error) {
  1098  	type NoMethod ImageVersion
  1099  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1100  }
  1101  
  1102  // Line: Contains information about a single line from logs.
  1103  type Line struct {
  1104  	// Content: Text content of the log line.
  1105  	Content string `json:"content,omitempty"`
  1106  	// LineNumber: Number of the line.
  1107  	LineNumber int64 `json:"lineNumber,omitempty"`
  1108  	// ForceSendFields is a list of field names (e.g. "Content") to unconditionally
  1109  	// include in API requests. By default, fields with empty or default values are
  1110  	// omitted from API requests. See
  1111  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1112  	// details.
  1113  	ForceSendFields []string `json:"-"`
  1114  	// NullFields is a list of field names (e.g. "Content") to include in API
  1115  	// requests with the JSON null value. By default, fields with empty values are
  1116  	// omitted from API requests. See
  1117  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1118  	NullFields []string `json:"-"`
  1119  }
  1120  
  1121  func (s *Line) MarshalJSON() ([]byte, error) {
  1122  	type NoMethod Line
  1123  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1124  }
  1125  
  1126  // ListEnvironmentsResponse: The environments in a project and location.
  1127  type ListEnvironmentsResponse struct {
  1128  	// Environments: The list of environments returned by a
  1129  	// ListEnvironmentsRequest.
  1130  	Environments []*Environment `json:"environments,omitempty"`
  1131  	// NextPageToken: The page token used to query for the next page if one exists.
  1132  	NextPageToken string `json:"nextPageToken,omitempty"`
  1133  
  1134  	// ServerResponse contains the HTTP response code and headers from the server.
  1135  	googleapi.ServerResponse `json:"-"`
  1136  	// ForceSendFields is a list of field names (e.g. "Environments") to
  1137  	// unconditionally include in API requests. By default, fields with empty or
  1138  	// default values are omitted from API requests. See
  1139  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1140  	// details.
  1141  	ForceSendFields []string `json:"-"`
  1142  	// NullFields is a list of field names (e.g. "Environments") to include in API
  1143  	// requests with the JSON null value. By default, fields with empty values are
  1144  	// omitted from API requests. See
  1145  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1146  	NullFields []string `json:"-"`
  1147  }
  1148  
  1149  func (s *ListEnvironmentsResponse) MarshalJSON() ([]byte, error) {
  1150  	type NoMethod ListEnvironmentsResponse
  1151  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1152  }
  1153  
  1154  // ListImageVersionsResponse: The ImageVersions in a project and location.
  1155  type ListImageVersionsResponse struct {
  1156  	// ImageVersions: The list of supported ImageVersions in a location.
  1157  	ImageVersions []*ImageVersion `json:"imageVersions,omitempty"`
  1158  	// NextPageToken: The page token used to query for the next page if one exists.
  1159  	NextPageToken string `json:"nextPageToken,omitempty"`
  1160  
  1161  	// ServerResponse contains the HTTP response code and headers from the server.
  1162  	googleapi.ServerResponse `json:"-"`
  1163  	// ForceSendFields is a list of field names (e.g. "ImageVersions") to
  1164  	// unconditionally include in API requests. By default, fields with empty or
  1165  	// default values are omitted from API requests. See
  1166  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1167  	// details.
  1168  	ForceSendFields []string `json:"-"`
  1169  	// NullFields is a list of field names (e.g. "ImageVersions") to include in API
  1170  	// requests with the JSON null value. By default, fields with empty values are
  1171  	// omitted from API requests. See
  1172  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1173  	NullFields []string `json:"-"`
  1174  }
  1175  
  1176  func (s *ListImageVersionsResponse) MarshalJSON() ([]byte, error) {
  1177  	type NoMethod ListImageVersionsResponse
  1178  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1179  }
  1180  
  1181  // ListOperationsResponse: The response message for Operations.ListOperations.
  1182  type ListOperationsResponse struct {
  1183  	// NextPageToken: The standard List next-page token.
  1184  	NextPageToken string `json:"nextPageToken,omitempty"`
  1185  	// Operations: A list of operations that matches the specified filter in the
  1186  	// request.
  1187  	Operations []*Operation `json:"operations,omitempty"`
  1188  
  1189  	// ServerResponse contains the HTTP response code and headers from the server.
  1190  	googleapi.ServerResponse `json:"-"`
  1191  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  1192  	// unconditionally include in API requests. By default, fields with empty or
  1193  	// default values are omitted from API requests. See
  1194  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1195  	// details.
  1196  	ForceSendFields []string `json:"-"`
  1197  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  1198  	// requests with the JSON null value. By default, fields with empty values are
  1199  	// omitted from API requests. See
  1200  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1201  	NullFields []string `json:"-"`
  1202  }
  1203  
  1204  func (s *ListOperationsResponse) MarshalJSON() ([]byte, error) {
  1205  	type NoMethod ListOperationsResponse
  1206  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1207  }
  1208  
  1209  // ListUserWorkloadsConfigMapsResponse: The user workloads ConfigMaps for a
  1210  // given environment.
  1211  type ListUserWorkloadsConfigMapsResponse struct {
  1212  	// NextPageToken: The page token used to query for the next page if one exists.
  1213  	NextPageToken string `json:"nextPageToken,omitempty"`
  1214  	// UserWorkloadsConfigMaps: The list of ConfigMaps returned by a
  1215  	// ListUserWorkloadsConfigMapsRequest.
  1216  	UserWorkloadsConfigMaps []*UserWorkloadsConfigMap `json:"userWorkloadsConfigMaps,omitempty"`
  1217  
  1218  	// ServerResponse contains the HTTP response code and headers from the server.
  1219  	googleapi.ServerResponse `json:"-"`
  1220  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  1221  	// unconditionally include in API requests. By default, fields with empty or
  1222  	// default values are omitted from API requests. See
  1223  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1224  	// details.
  1225  	ForceSendFields []string `json:"-"`
  1226  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  1227  	// requests with the JSON null value. By default, fields with empty values are
  1228  	// omitted from API requests. See
  1229  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1230  	NullFields []string `json:"-"`
  1231  }
  1232  
  1233  func (s *ListUserWorkloadsConfigMapsResponse) MarshalJSON() ([]byte, error) {
  1234  	type NoMethod ListUserWorkloadsConfigMapsResponse
  1235  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1236  }
  1237  
  1238  // ListUserWorkloadsSecretsResponse: The user workloads Secrets for a given
  1239  // environment.
  1240  type ListUserWorkloadsSecretsResponse struct {
  1241  	// NextPageToken: The page token used to query for the next page if one exists.
  1242  	NextPageToken string `json:"nextPageToken,omitempty"`
  1243  	// UserWorkloadsSecrets: The list of Secrets returned by a
  1244  	// ListUserWorkloadsSecretsRequest.
  1245  	UserWorkloadsSecrets []*UserWorkloadsSecret `json:"userWorkloadsSecrets,omitempty"`
  1246  
  1247  	// ServerResponse contains the HTTP response code and headers from the server.
  1248  	googleapi.ServerResponse `json:"-"`
  1249  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  1250  	// unconditionally include in API requests. By default, fields with empty or
  1251  	// default values are omitted from API requests. See
  1252  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1253  	// details.
  1254  	ForceSendFields []string `json:"-"`
  1255  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  1256  	// requests with the JSON null value. By default, fields with empty values are
  1257  	// omitted from API requests. See
  1258  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1259  	NullFields []string `json:"-"`
  1260  }
  1261  
  1262  func (s *ListUserWorkloadsSecretsResponse) MarshalJSON() ([]byte, error) {
  1263  	type NoMethod ListUserWorkloadsSecretsResponse
  1264  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1265  }
  1266  
  1267  // ListWorkloadsResponse: Response to ListWorkloadsRequest.
  1268  type ListWorkloadsResponse struct {
  1269  	// NextPageToken: The page token used to query for the next page if one exists.
  1270  	NextPageToken string `json:"nextPageToken,omitempty"`
  1271  	// Workloads: The list of environment workloads.
  1272  	Workloads []*ComposerWorkload `json:"workloads,omitempty"`
  1273  
  1274  	// ServerResponse contains the HTTP response code and headers from the server.
  1275  	googleapi.ServerResponse `json:"-"`
  1276  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  1277  	// unconditionally include in API requests. By default, fields with empty or
  1278  	// default values are omitted from API requests. See
  1279  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1280  	// details.
  1281  	ForceSendFields []string `json:"-"`
  1282  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  1283  	// requests with the JSON null value. By default, fields with empty values are
  1284  	// omitted from API requests. See
  1285  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1286  	NullFields []string `json:"-"`
  1287  }
  1288  
  1289  func (s *ListWorkloadsResponse) MarshalJSON() ([]byte, error) {
  1290  	type NoMethod ListWorkloadsResponse
  1291  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1292  }
  1293  
  1294  // LoadSnapshotRequest: Request to load a snapshot into a Cloud Composer
  1295  // environment.
  1296  type LoadSnapshotRequest struct {
  1297  	// SkipAirflowOverridesSetting: Whether or not to skip setting Airflow
  1298  	// overrides when loading the environment's state.
  1299  	SkipAirflowOverridesSetting bool `json:"skipAirflowOverridesSetting,omitempty"`
  1300  	// SkipEnvironmentVariablesSetting: Whether or not to skip setting environment
  1301  	// variables when loading the environment's state.
  1302  	SkipEnvironmentVariablesSetting bool `json:"skipEnvironmentVariablesSetting,omitempty"`
  1303  	// SkipGcsDataCopying: Whether or not to skip copying Cloud Storage data when
  1304  	// loading the environment's state.
  1305  	SkipGcsDataCopying bool `json:"skipGcsDataCopying,omitempty"`
  1306  	// SkipPypiPackagesInstallation: Whether or not to skip installing Pypi
  1307  	// packages when loading the environment's state.
  1308  	SkipPypiPackagesInstallation bool `json:"skipPypiPackagesInstallation,omitempty"`
  1309  	// SnapshotPath: A Cloud Storage path to a snapshot to load, e.g.:
  1310  	// "gs://my-bucket/snapshots/project_location_environment_timestamp".
  1311  	SnapshotPath string `json:"snapshotPath,omitempty"`
  1312  	// ForceSendFields is a list of field names (e.g.
  1313  	// "SkipAirflowOverridesSetting") to unconditionally include in API requests.
  1314  	// By default, fields with empty or default values are omitted from API
  1315  	// requests. See https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields
  1316  	// for more details.
  1317  	ForceSendFields []string `json:"-"`
  1318  	// NullFields is a list of field names (e.g. "SkipAirflowOverridesSetting") to
  1319  	// include in API requests with the JSON null value. By default, fields with
  1320  	// empty values are omitted from API requests. See
  1321  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1322  	NullFields []string `json:"-"`
  1323  }
  1324  
  1325  func (s *LoadSnapshotRequest) MarshalJSON() ([]byte, error) {
  1326  	type NoMethod LoadSnapshotRequest
  1327  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1328  }
  1329  
  1330  // LoadSnapshotResponse: Response to LoadSnapshotRequest.
  1331  type LoadSnapshotResponse struct {
  1332  }
  1333  
  1334  // MaintenanceWindow: The configuration settings for Cloud Composer maintenance
  1335  // window. The following example: ``` { "startTime":"2019-08-01T01:00:00Z"
  1336  // "endTime":"2019-08-01T07:00:00Z" "recurrence":"FREQ=WEEKLY;BYDAY=TU,WE" }
  1337  // ``` would define a maintenance window between 01 and 07 hours UTC during
  1338  // each Tuesday and Wednesday.
  1339  type MaintenanceWindow struct {
  1340  	// EndTime: Required. Maintenance window end time. It is used only to calculate
  1341  	// the duration of the maintenance window. The value for end_time must be in
  1342  	// the future, relative to `start_time`.
  1343  	EndTime string `json:"endTime,omitempty"`
  1344  	// Recurrence: Required. Maintenance window recurrence. Format is a subset of
  1345  	// RFC-5545 (https://tools.ietf.org/html/rfc5545) `RRULE`. The only allowed
  1346  	// values for `FREQ` field are `FREQ=DAILY` and `FREQ=WEEKLY;BYDAY=...` Example
  1347  	// values: `FREQ=WEEKLY;BYDAY=TU,WE`, `FREQ=DAILY`.
  1348  	Recurrence string `json:"recurrence,omitempty"`
  1349  	// StartTime: Required. Start time of the first recurrence of the maintenance
  1350  	// window.
  1351  	StartTime string `json:"startTime,omitempty"`
  1352  	// ForceSendFields is a list of field names (e.g. "EndTime") to unconditionally
  1353  	// include in API requests. By default, fields with empty or default values are
  1354  	// omitted from API requests. See
  1355  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1356  	// details.
  1357  	ForceSendFields []string `json:"-"`
  1358  	// NullFields is a list of field names (e.g. "EndTime") to include in API
  1359  	// requests with the JSON null value. By default, fields with empty values are
  1360  	// omitted from API requests. See
  1361  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1362  	NullFields []string `json:"-"`
  1363  }
  1364  
  1365  func (s *MaintenanceWindow) MarshalJSON() ([]byte, error) {
  1366  	type NoMethod MaintenanceWindow
  1367  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1368  }
  1369  
  1370  // MasterAuthorizedNetworksConfig: Configuration options for the master
  1371  // authorized networks feature. Enabled master authorized networks will
  1372  // disallow all external traffic to access Kubernetes master through HTTPS
  1373  // except traffic from the given CIDR blocks, Google Compute Engine Public IPs
  1374  // and Google Prod IPs.
  1375  type MasterAuthorizedNetworksConfig struct {
  1376  	// CidrBlocks: Up to 50 external networks that could access Kubernetes master
  1377  	// through HTTPS.
  1378  	CidrBlocks []*CidrBlock `json:"cidrBlocks,omitempty"`
  1379  	// Enabled: Whether or not master authorized networks feature is enabled.
  1380  	Enabled bool `json:"enabled,omitempty"`
  1381  	// ForceSendFields is a list of field names (e.g. "CidrBlocks") to
  1382  	// unconditionally include in API requests. By default, fields with empty or
  1383  	// default values are omitted from API requests. See
  1384  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1385  	// details.
  1386  	ForceSendFields []string `json:"-"`
  1387  	// NullFields is a list of field names (e.g. "CidrBlocks") to include in API
  1388  	// requests with the JSON null value. By default, fields with empty values are
  1389  	// omitted from API requests. See
  1390  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1391  	NullFields []string `json:"-"`
  1392  }
  1393  
  1394  func (s *MasterAuthorizedNetworksConfig) MarshalJSON() ([]byte, error) {
  1395  	type NoMethod MasterAuthorizedNetworksConfig
  1396  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1397  }
  1398  
  1399  // NetworkingConfig: Configuration options for networking connections in the
  1400  // Composer 2 environment.
  1401  type NetworkingConfig struct {
  1402  	// ConnectionType: Optional. Indicates the user requested specifc connection
  1403  	// type between Tenant and Customer projects. You cannot set networking
  1404  	// connection type in public IP environment.
  1405  	//
  1406  	// Possible values:
  1407  	//   "CONNECTION_TYPE_UNSPECIFIED" - No specific connection type was requested,
  1408  	// so the environment uses the default value corresponding to the rest of its
  1409  	// configuration.
  1410  	//   "VPC_PEERING" - Requests the use of VPC peerings for connecting the
  1411  	// Customer and Tenant projects.
  1412  	//   "PRIVATE_SERVICE_CONNECT" - Requests the use of Private Service Connect
  1413  	// for connecting the Customer and Tenant projects.
  1414  	ConnectionType string `json:"connectionType,omitempty"`
  1415  	// ForceSendFields is a list of field names (e.g. "ConnectionType") 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. "ConnectionType") to include in
  1422  	// API requests with the JSON null value. By default, fields with empty values
  1423  	// are 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 *NetworkingConfig) MarshalJSON() ([]byte, error) {
  1429  	type NoMethod NetworkingConfig
  1430  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1431  }
  1432  
  1433  // NodeConfig: The configuration information for the Kubernetes Engine nodes
  1434  // running the Apache Airflow software.
  1435  type NodeConfig struct {
  1436  	// ComposerInternalIpv4CidrBlock: Optional. The IP range in CIDR notation to
  1437  	// use internally by Cloud Composer. IP addresses are not reserved - and the
  1438  	// same range can be used by multiple Cloud Composer environments. In case of
  1439  	// overlap, IPs from this range will not be accessible in the user's VPC
  1440  	// network. Cannot be updated. If not specified, the default value of
  1441  	// '100.64.128.0/20' is used. This field is supported for Cloud Composer
  1442  	// environments in versions composer-3.*.*-airflow-*.*.* and newer.
  1443  	ComposerInternalIpv4CidrBlock string `json:"composerInternalIpv4CidrBlock,omitempty"`
  1444  	// ComposerNetworkAttachment: Optional. Network Attachment that Cloud Composer
  1445  	// environment is connected to, which provides connectivity with a user's VPC
  1446  	// network. Takes precedence over network and subnetwork settings. If not
  1447  	// provided, but network and subnetwork are defined during environment, it will
  1448  	// be provisioned. If not provided and network and subnetwork are also empty,
  1449  	// then connectivity to user's VPC network is disabled. Network attachment must
  1450  	// be provided in format
  1451  	// projects/{project}/regions/{region}/networkAttachments/{networkAttachment}.
  1452  	// This field is supported for Cloud Composer environments in versions
  1453  	// composer-3.*.*-airflow-*.*.* and newer.
  1454  	ComposerNetworkAttachment string `json:"composerNetworkAttachment,omitempty"`
  1455  	// DiskSizeGb: Optional. The disk size in GB used for node VMs. Minimum size is
  1456  	// 30GB. If unspecified, defaults to 100GB. Cannot be updated. This field is
  1457  	// supported for Cloud Composer environments in versions
  1458  	// composer-1.*.*-airflow-*.*.*.
  1459  	DiskSizeGb int64 `json:"diskSizeGb,omitempty"`
  1460  	// EnableIpMasqAgent: Optional. Deploys 'ip-masq-agent' daemon set in the GKE
  1461  	// cluster and defines nonMasqueradeCIDRs equals to pod IP range so IP
  1462  	// masquerading is used for all destination addresses, except between pods
  1463  	// traffic. See:
  1464  	// https://cloud.google.com/kubernetes-engine/docs/how-to/ip-masquerade-agent
  1465  	EnableIpMasqAgent bool `json:"enableIpMasqAgent,omitempty"`
  1466  	// IpAllocationPolicy: Optional. The IPAllocationPolicy fields for the GKE
  1467  	// cluster.
  1468  	IpAllocationPolicy *IPAllocationPolicy `json:"ipAllocationPolicy,omitempty"`
  1469  	// Location: Optional. The Compute Engine zone (/compute/docs/regions-zones) in
  1470  	// which to deploy the VMs used to run the Apache Airflow software, specified
  1471  	// as a relative resource name
  1472  	// (/apis/design/resource_names#relative_resource_name). For example:
  1473  	// "projects/{projectId}/zones/{zoneId}". This `location` must belong to the
  1474  	// enclosing environment's project and location. If both this field and
  1475  	// `nodeConfig.machineType` are specified, `nodeConfig.machineType` must belong
  1476  	// to this `location`; if both are unspecified, the service will pick a zone in
  1477  	// the Compute Engine region corresponding to the Cloud Composer location, and
  1478  	// propagate that choice to both fields. If only one field (`location` or
  1479  	// `nodeConfig.machineType`) is specified, the location information from the
  1480  	// specified field will be propagated to the unspecified field. This field is
  1481  	// supported for Cloud Composer environments in versions
  1482  	// composer-1.*.*-airflow-*.*.*.
  1483  	Location string `json:"location,omitempty"`
  1484  	// MachineType: Optional. The Compute Engine machine type
  1485  	// (/compute/docs/machine-types) used for cluster instances, specified as a
  1486  	// relative resource name (/apis/design/resource_names#relative_resource_name).
  1487  	// For example:
  1488  	// "projects/{projectId}/zones/{zoneId}/machineTypes/{machineTypeId}". The
  1489  	// `machineType` must belong to the enclosing environment's project and
  1490  	// location. If both this field and `nodeConfig.location` are specified, this
  1491  	// `machineType` must belong to the `nodeConfig.location`; if both are
  1492  	// unspecified, the service will pick a zone in the Compute Engine region
  1493  	// corresponding to the Cloud Composer location, and propagate that choice to
  1494  	// both fields. If exactly one of this field and `nodeConfig.location` is
  1495  	// specified, the location information from the specified field will be
  1496  	// propagated to the unspecified field. The `machineTypeId` must not be a
  1497  	// shared-core machine type (/compute/docs/machine-types#sharedcore). If this
  1498  	// field is unspecified, the `machineTypeId` defaults to "n1-standard-1". This
  1499  	// field is supported for Cloud Composer environments in versions
  1500  	// composer-1.*.*-airflow-*.*.*.
  1501  	MachineType string `json:"machineType,omitempty"`
  1502  	// MaxPodsPerNode: Optional. The maximum number of pods per node in the Cloud
  1503  	// Composer GKE cluster. The value must be between 8 and 110 and it can be set
  1504  	// only if the environment is VPC-native. The default value is 32. Values of
  1505  	// this field will be propagated both to the `default-pool` node pool of the
  1506  	// newly created GKE cluster, and to the default "Maximum Pods per Node" value
  1507  	// which is used for newly created node pools if their value is not explicitly
  1508  	// set during node pool creation. For more information, see [Optimizing IP
  1509  	// address allocation]
  1510  	// (https://cloud.google.com/kubernetes-engine/docs/how-to/flexible-pod-cidr).
  1511  	// Cannot be updated. This field is supported for Cloud Composer environments
  1512  	// in versions composer-1.*.*-airflow-*.*.*.
  1513  	MaxPodsPerNode int64 `json:"maxPodsPerNode,omitempty"`
  1514  	// Network: Optional. The Compute Engine network to be used for machine
  1515  	// communications, specified as a relative resource name
  1516  	// (/apis/design/resource_names#relative_resource_name). For example:
  1517  	// "projects/{projectId}/global/networks/{networkId}". If unspecified, the
  1518  	// default network in the environment's project is used. If a Custom Subnet
  1519  	// Network (/vpc/docs/vpc#vpc_networks_and_subnets) is provided,
  1520  	// `nodeConfig.subnetwork` must also be provided. For Shared VPC
  1521  	// (/vpc/docs/shared-vpc) subnetwork requirements, see `nodeConfig.subnetwork`.
  1522  	Network string `json:"network,omitempty"`
  1523  	// OauthScopes: Optional. The set of Google API scopes to be made available on
  1524  	// all node VMs. If `oauth_scopes` is empty, defaults to
  1525  	// ["https://www.googleapis.com/auth/cloud-platform"]. Cannot be updated. This
  1526  	// field is supported for Cloud Composer environments in versions
  1527  	// composer-1.*.*-airflow-*.*.*.
  1528  	OauthScopes []string `json:"oauthScopes,omitempty"`
  1529  	// ServiceAccount: Optional. The Google Cloud Platform Service Account to be
  1530  	// used by the workloads. If a service account is not specified, the "default"
  1531  	// Compute Engine service account is used. Cannot be updated.
  1532  	ServiceAccount string `json:"serviceAccount,omitempty"`
  1533  	// Subnetwork: Optional. The Compute Engine subnetwork to be used for machine
  1534  	// communications, specified as a relative resource name
  1535  	// (/apis/design/resource_names#relative_resource_name). For example:
  1536  	// "projects/{projectId}/regions/{regionId}/subnetworks/{subnetworkId}" If a
  1537  	// subnetwork is provided, `nodeConfig.network` must also be provided, and the
  1538  	// subnetwork must belong to the enclosing environment's project and location.
  1539  	Subnetwork string `json:"subnetwork,omitempty"`
  1540  	// Tags: Optional. The list of instance tags applied to all node VMs. Tags are
  1541  	// used to identify valid sources or targets for network firewalls. Each tag
  1542  	// within the list must comply with RFC1035
  1543  	// (https://www.ietf.org/rfc/rfc1035.txt). Cannot be updated.
  1544  	Tags []string `json:"tags,omitempty"`
  1545  	// ForceSendFields is a list of field names (e.g.
  1546  	// "ComposerInternalIpv4CidrBlock") to unconditionally include in API requests.
  1547  	// By default, fields with empty or default values are omitted from API
  1548  	// requests. See https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields
  1549  	// for more details.
  1550  	ForceSendFields []string `json:"-"`
  1551  	// NullFields is a list of field names (e.g. "ComposerInternalIpv4CidrBlock")
  1552  	// to include in API requests with the JSON null value. By default, fields with
  1553  	// empty values are omitted from API requests. See
  1554  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1555  	NullFields []string `json:"-"`
  1556  }
  1557  
  1558  func (s *NodeConfig) MarshalJSON() ([]byte, error) {
  1559  	type NoMethod NodeConfig
  1560  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1561  }
  1562  
  1563  // Operation: This resource represents a long-running operation that is the
  1564  // result of a network API call.
  1565  type Operation struct {
  1566  	// Done: If the value is `false`, it means the operation is still in progress.
  1567  	// If `true`, the operation is completed, and either `error` or `response` is
  1568  	// available.
  1569  	Done bool `json:"done,omitempty"`
  1570  	// Error: The error result of the operation in case of failure or cancellation.
  1571  	Error *Status `json:"error,omitempty"`
  1572  	// Metadata: Service-specific metadata associated with the operation. It
  1573  	// typically contains progress information and common metadata such as create
  1574  	// time. Some services might not provide such metadata. Any method that returns
  1575  	// a long-running operation should document the metadata type, if any.
  1576  	Metadata googleapi.RawMessage `json:"metadata,omitempty"`
  1577  	// Name: The server-assigned name, which is only unique within the same service
  1578  	// that originally returns it. If you use the default HTTP mapping, the `name`
  1579  	// should be a resource name ending with `operations/{unique_id}`.
  1580  	Name string `json:"name,omitempty"`
  1581  	// Response: The normal, successful response of the operation. If the original
  1582  	// method returns no data on success, such as `Delete`, the response is
  1583  	// `google.protobuf.Empty`. If the original method is standard
  1584  	// `Get`/`Create`/`Update`, the response should be the resource. For other
  1585  	// methods, the response should have the type `XxxResponse`, where `Xxx` is the
  1586  	// original method name. For example, if the original method name is
  1587  	// `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
  1588  	Response googleapi.RawMessage `json:"response,omitempty"`
  1589  
  1590  	// ServerResponse contains the HTTP response code and headers from the server.
  1591  	googleapi.ServerResponse `json:"-"`
  1592  	// ForceSendFields is a list of field names (e.g. "Done") to unconditionally
  1593  	// include in API requests. By default, fields with empty or default values are
  1594  	// omitted from API requests. See
  1595  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1596  	// details.
  1597  	ForceSendFields []string `json:"-"`
  1598  	// NullFields is a list of field names (e.g. "Done") to include in API requests
  1599  	// with the JSON null value. By default, fields with empty values are omitted
  1600  	// from API requests. See
  1601  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1602  	NullFields []string `json:"-"`
  1603  }
  1604  
  1605  func (s *Operation) MarshalJSON() ([]byte, error) {
  1606  	type NoMethod Operation
  1607  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1608  }
  1609  
  1610  // OperationMetadata: Metadata describing an operation.
  1611  type OperationMetadata struct {
  1612  	// CreateTime: Output only. The time the operation was submitted to the server.
  1613  	CreateTime string `json:"createTime,omitempty"`
  1614  	// EndTime: Output only. The time when the operation terminated, regardless of
  1615  	// its success. This field is unset if the operation is still ongoing.
  1616  	EndTime string `json:"endTime,omitempty"`
  1617  	// OperationType: Output only. The type of operation being performed.
  1618  	//
  1619  	// Possible values:
  1620  	//   "TYPE_UNSPECIFIED" - Unused.
  1621  	//   "CREATE" - A resource creation operation.
  1622  	//   "DELETE" - A resource deletion operation.
  1623  	//   "UPDATE" - A resource update operation.
  1624  	//   "CHECK" - A resource check operation.
  1625  	//   "SAVE_SNAPSHOT" - Saves snapshot of the resource operation.
  1626  	//   "LOAD_SNAPSHOT" - Loads snapshot of the resource operation.
  1627  	//   "DATABASE_FAILOVER" - Triggers failover of environment's Cloud SQL
  1628  	// instance (only for highly resilient environments).
  1629  	OperationType string `json:"operationType,omitempty"`
  1630  	// Resource: Output only. The resource being operated on, as a relative
  1631  	// resource name ( /apis/design/resource_names#relative_resource_name).
  1632  	Resource string `json:"resource,omitempty"`
  1633  	// ResourceUuid: Output only. The UUID of the resource being operated on.
  1634  	ResourceUuid string `json:"resourceUuid,omitempty"`
  1635  	// State: Output only. The current operation state.
  1636  	//
  1637  	// Possible values:
  1638  	//   "STATE_UNSPECIFIED" - Unused.
  1639  	//   "PENDING" - The operation has been created but is not yet started.
  1640  	//   "RUNNING" - The operation is underway.
  1641  	//   "SUCCESSFUL" - The operation completed successfully.
  1642  	//   "FAILED" - The operation is no longer running but did not succeed.
  1643  	State string `json:"state,omitempty"`
  1644  	// ForceSendFields is a list of field names (e.g. "CreateTime") to
  1645  	// unconditionally include in API requests. By default, fields with empty or
  1646  	// default values are omitted from API requests. See
  1647  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1648  	// details.
  1649  	ForceSendFields []string `json:"-"`
  1650  	// NullFields is a list of field names (e.g. "CreateTime") to include in API
  1651  	// requests with the JSON null value. By default, fields with empty values are
  1652  	// omitted from API requests. See
  1653  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1654  	NullFields []string `json:"-"`
  1655  }
  1656  
  1657  func (s *OperationMetadata) MarshalJSON() ([]byte, error) {
  1658  	type NoMethod OperationMetadata
  1659  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1660  }
  1661  
  1662  // PollAirflowCommandRequest: Poll Airflow Command request.
  1663  type PollAirflowCommandRequest struct {
  1664  	// ExecutionId: The unique ID of the command execution.
  1665  	ExecutionId string `json:"executionId,omitempty"`
  1666  	// NextLineNumber: Line number from which new logs should be fetched.
  1667  	NextLineNumber int64 `json:"nextLineNumber,omitempty"`
  1668  	// Pod: The name of the pod where the command is executed.
  1669  	Pod string `json:"pod,omitempty"`
  1670  	// PodNamespace: The namespace of the pod where the command is executed.
  1671  	PodNamespace string `json:"podNamespace,omitempty"`
  1672  	// ForceSendFields is a list of field names (e.g. "ExecutionId") to
  1673  	// unconditionally include in API requests. By default, fields with empty or
  1674  	// default values are omitted from API requests. See
  1675  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1676  	// details.
  1677  	ForceSendFields []string `json:"-"`
  1678  	// NullFields is a list of field names (e.g. "ExecutionId") to include in API
  1679  	// requests with the JSON null value. By default, fields with empty values are
  1680  	// omitted from API requests. See
  1681  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1682  	NullFields []string `json:"-"`
  1683  }
  1684  
  1685  func (s *PollAirflowCommandRequest) MarshalJSON() ([]byte, error) {
  1686  	type NoMethod PollAirflowCommandRequest
  1687  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1688  }
  1689  
  1690  // PollAirflowCommandResponse: Response to PollAirflowCommandRequest.
  1691  type PollAirflowCommandResponse struct {
  1692  	// ExitInfo: The result exit status of the command.
  1693  	ExitInfo *ExitInfo `json:"exitInfo,omitempty"`
  1694  	// Output: Output from the command execution. It may not contain the full
  1695  	// output and the caller may need to poll for more lines.
  1696  	Output []*Line `json:"output,omitempty"`
  1697  	// OutputEnd: Whether the command execution has finished and there is no more
  1698  	// output.
  1699  	OutputEnd bool `json:"outputEnd,omitempty"`
  1700  
  1701  	// ServerResponse contains the HTTP response code and headers from the server.
  1702  	googleapi.ServerResponse `json:"-"`
  1703  	// ForceSendFields is a list of field names (e.g. "ExitInfo") to
  1704  	// unconditionally include in API requests. By default, fields with empty or
  1705  	// default values are omitted from API requests. See
  1706  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1707  	// details.
  1708  	ForceSendFields []string `json:"-"`
  1709  	// NullFields is a list of field names (e.g. "ExitInfo") to include in API
  1710  	// requests with the JSON null value. By default, fields with empty values are
  1711  	// omitted from API requests. See
  1712  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1713  	NullFields []string `json:"-"`
  1714  }
  1715  
  1716  func (s *PollAirflowCommandResponse) MarshalJSON() ([]byte, error) {
  1717  	type NoMethod PollAirflowCommandResponse
  1718  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1719  }
  1720  
  1721  // PrivateClusterConfig: Configuration options for the private GKE cluster in a
  1722  // Cloud Composer environment.
  1723  type PrivateClusterConfig struct {
  1724  	// EnablePrivateEndpoint: Optional. If `true`, access to the public endpoint of
  1725  	// the GKE cluster is denied.
  1726  	EnablePrivateEndpoint bool `json:"enablePrivateEndpoint,omitempty"`
  1727  	// MasterIpv4CidrBlock: Optional. The CIDR block from which IPv4 range for GKE
  1728  	// master will be reserved. If left blank, the default value of '172.16.0.0/23'
  1729  	// is used.
  1730  	MasterIpv4CidrBlock string `json:"masterIpv4CidrBlock,omitempty"`
  1731  	// MasterIpv4ReservedRange: Output only. The IP range in CIDR notation to use
  1732  	// for the hosted master network. This range is used for assigning internal IP
  1733  	// addresses to the cluster master or set of masters and to the internal load
  1734  	// balancer virtual IP. This range must not overlap with any other ranges in
  1735  	// use within the cluster's network.
  1736  	MasterIpv4ReservedRange string `json:"masterIpv4ReservedRange,omitempty"`
  1737  	// ForceSendFields is a list of field names (e.g. "EnablePrivateEndpoint") to
  1738  	// unconditionally include in API requests. By default, fields with empty or
  1739  	// default values are omitted from API requests. See
  1740  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1741  	// details.
  1742  	ForceSendFields []string `json:"-"`
  1743  	// NullFields is a list of field names (e.g. "EnablePrivateEndpoint") to
  1744  	// include in API requests with the JSON null value. By default, fields with
  1745  	// empty values are omitted from API requests. See
  1746  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1747  	NullFields []string `json:"-"`
  1748  }
  1749  
  1750  func (s *PrivateClusterConfig) MarshalJSON() ([]byte, error) {
  1751  	type NoMethod PrivateClusterConfig
  1752  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1753  }
  1754  
  1755  // PrivateEnvironmentConfig: The configuration information for configuring a
  1756  // Private IP Cloud Composer environment.
  1757  type PrivateEnvironmentConfig struct {
  1758  	// CloudComposerConnectionSubnetwork: Optional. When specified, the environment
  1759  	// will use Private Service Connect instead of VPC peerings to connect to Cloud
  1760  	// SQL in the Tenant Project, and the PSC endpoint in the Customer Project will
  1761  	// use an IP address from this subnetwork.
  1762  	CloudComposerConnectionSubnetwork string `json:"cloudComposerConnectionSubnetwork,omitempty"`
  1763  	// CloudComposerNetworkIpv4CidrBlock: Optional. The CIDR block from which IP
  1764  	// range for Cloud Composer Network in tenant project will be reserved. Needs
  1765  	// to be disjoint from private_cluster_config.master_ipv4_cidr_block and
  1766  	// cloud_sql_ipv4_cidr_block. This field is supported for Cloud Composer
  1767  	// environments in versions composer-2.*.*-airflow-*.*.* and newer.
  1768  	CloudComposerNetworkIpv4CidrBlock string `json:"cloudComposerNetworkIpv4CidrBlock,omitempty"`
  1769  	// CloudComposerNetworkIpv4ReservedRange: Output only. The IP range reserved
  1770  	// for the tenant project's Cloud Composer network. This field is supported for
  1771  	// Cloud Composer environments in versions composer-2.*.*-airflow-*.*.* and
  1772  	// newer.
  1773  	CloudComposerNetworkIpv4ReservedRange string `json:"cloudComposerNetworkIpv4ReservedRange,omitempty"`
  1774  	// CloudSqlIpv4CidrBlock: Optional. The CIDR block from which IP range in
  1775  	// tenant project will be reserved for Cloud SQL. Needs to be disjoint from
  1776  	// web_server_ipv4_cidr_block
  1777  	CloudSqlIpv4CidrBlock string `json:"cloudSqlIpv4CidrBlock,omitempty"`
  1778  	// EnablePrivateBuildsOnly: Optional. If `true`, builds performed during
  1779  	// operations that install Python packages have only private connectivity to
  1780  	// Google services (including Artifact Registry) and VPC network (if either
  1781  	// `NodeConfig.network` and `NodeConfig.subnetwork` fields or
  1782  	// `NodeConfig.composer_network_attachment` field are specified). If `false`,
  1783  	// the builds also have access to the internet. This field is supported for
  1784  	// Cloud Composer environments in versions composer-3.*.*-airflow-*.*.* and
  1785  	// newer.
  1786  	EnablePrivateBuildsOnly bool `json:"enablePrivateBuildsOnly,omitempty"`
  1787  	// EnablePrivateEnvironment: Optional. If `true`, a Private IP Cloud Composer
  1788  	// environment is created. If this field is set to true,
  1789  	// `IPAllocationPolicy.use_ip_aliases` must be set to true for Cloud Composer
  1790  	// environments in versions composer-1.*.*-airflow-*.*.*.
  1791  	EnablePrivateEnvironment bool `json:"enablePrivateEnvironment,omitempty"`
  1792  	// EnablePrivatelyUsedPublicIps: Optional. When enabled, IPs from public
  1793  	// (non-RFC1918) ranges can be used for
  1794  	// `IPAllocationPolicy.cluster_ipv4_cidr_block` and
  1795  	// `IPAllocationPolicy.service_ipv4_cidr_block`.
  1796  	EnablePrivatelyUsedPublicIps bool `json:"enablePrivatelyUsedPublicIps,omitempty"`
  1797  	// NetworkingConfig: Optional. Configuration for the network connections
  1798  	// configuration in the environment.
  1799  	NetworkingConfig *NetworkingConfig `json:"networkingConfig,omitempty"`
  1800  	// PrivateClusterConfig: Optional. Configuration for the private GKE cluster
  1801  	// for a Private IP Cloud Composer environment.
  1802  	PrivateClusterConfig *PrivateClusterConfig `json:"privateClusterConfig,omitempty"`
  1803  	// WebServerIpv4CidrBlock: Optional. The CIDR block from which IP range for web
  1804  	// server will be reserved. Needs to be disjoint from
  1805  	// private_cluster_config.master_ipv4_cidr_block and cloud_sql_ipv4_cidr_block.
  1806  	// This field is supported for Cloud Composer environments in versions
  1807  	// composer-1.*.*-airflow-*.*.*.
  1808  	WebServerIpv4CidrBlock string `json:"webServerIpv4CidrBlock,omitempty"`
  1809  	// WebServerIpv4ReservedRange: Output only. The IP range reserved for the
  1810  	// tenant project's App Engine VMs. This field is supported for Cloud Composer
  1811  	// environments in versions composer-1.*.*-airflow-*.*.*.
  1812  	WebServerIpv4ReservedRange string `json:"webServerIpv4ReservedRange,omitempty"`
  1813  	// ForceSendFields is a list of field names (e.g.
  1814  	// "CloudComposerConnectionSubnetwork") to unconditionally include in API
  1815  	// requests. By default, fields with empty or default values are omitted from
  1816  	// API requests. See
  1817  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1818  	// details.
  1819  	ForceSendFields []string `json:"-"`
  1820  	// NullFields is a list of field names (e.g.
  1821  	// "CloudComposerConnectionSubnetwork") to include in API requests with the
  1822  	// JSON null value. By default, fields with empty values are omitted from API
  1823  	// requests. See https://pkg.go.dev/google.golang.org/api#hdr-NullFields for
  1824  	// more details.
  1825  	NullFields []string `json:"-"`
  1826  }
  1827  
  1828  func (s *PrivateEnvironmentConfig) MarshalJSON() ([]byte, error) {
  1829  	type NoMethod PrivateEnvironmentConfig
  1830  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1831  }
  1832  
  1833  // RecoveryConfig: The Recovery settings of an environment.
  1834  type RecoveryConfig struct {
  1835  	// ScheduledSnapshotsConfig: Optional. The configuration for scheduled snapshot
  1836  	// creation mechanism.
  1837  	ScheduledSnapshotsConfig *ScheduledSnapshotsConfig `json:"scheduledSnapshotsConfig,omitempty"`
  1838  	// ForceSendFields is a list of field names (e.g. "ScheduledSnapshotsConfig")
  1839  	// to unconditionally include in API requests. By default, fields with empty or
  1840  	// default values are omitted from API requests. See
  1841  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1842  	// details.
  1843  	ForceSendFields []string `json:"-"`
  1844  	// NullFields is a list of field names (e.g. "ScheduledSnapshotsConfig") to
  1845  	// include in API requests with the JSON null value. By default, fields with
  1846  	// empty values are omitted from API requests. See
  1847  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1848  	NullFields []string `json:"-"`
  1849  }
  1850  
  1851  func (s *RecoveryConfig) MarshalJSON() ([]byte, error) {
  1852  	type NoMethod RecoveryConfig
  1853  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1854  }
  1855  
  1856  // RestartWebServerRequest: Restart Airflow web server.
  1857  type RestartWebServerRequest struct {
  1858  }
  1859  
  1860  // SaveSnapshotRequest: Request to create a snapshot of a Cloud Composer
  1861  // environment.
  1862  type SaveSnapshotRequest struct {
  1863  	// SnapshotLocation: Location in a Cloud Storage where the snapshot is going to
  1864  	// be stored, e.g.: "gs://my-bucket/snapshots".
  1865  	SnapshotLocation string `json:"snapshotLocation,omitempty"`
  1866  	// ForceSendFields is a list of field names (e.g. "SnapshotLocation") to
  1867  	// unconditionally include in API requests. By default, fields with empty or
  1868  	// default values are omitted from API requests. See
  1869  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1870  	// details.
  1871  	ForceSendFields []string `json:"-"`
  1872  	// NullFields is a list of field names (e.g. "SnapshotLocation") to include in
  1873  	// API requests with the JSON null value. By default, fields with empty values
  1874  	// are omitted from API requests. See
  1875  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1876  	NullFields []string `json:"-"`
  1877  }
  1878  
  1879  func (s *SaveSnapshotRequest) MarshalJSON() ([]byte, error) {
  1880  	type NoMethod SaveSnapshotRequest
  1881  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1882  }
  1883  
  1884  // SaveSnapshotResponse: Response to SaveSnapshotRequest.
  1885  type SaveSnapshotResponse struct {
  1886  	// SnapshotPath: The fully-resolved Cloud Storage path of the created snapshot,
  1887  	// e.g.: "gs://my-bucket/snapshots/project_location_environment_timestamp".
  1888  	// This field is populated only if the snapshot creation was successful.
  1889  	SnapshotPath string `json:"snapshotPath,omitempty"`
  1890  	// ForceSendFields is a list of field names (e.g. "SnapshotPath") to
  1891  	// unconditionally include in API requests. By default, fields with empty or
  1892  	// default values are omitted from API requests. See
  1893  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1894  	// details.
  1895  	ForceSendFields []string `json:"-"`
  1896  	// NullFields is a list of field names (e.g. "SnapshotPath") to include in API
  1897  	// requests with the JSON null value. By default, fields with empty values are
  1898  	// omitted from API requests. See
  1899  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1900  	NullFields []string `json:"-"`
  1901  }
  1902  
  1903  func (s *SaveSnapshotResponse) MarshalJSON() ([]byte, error) {
  1904  	type NoMethod SaveSnapshotResponse
  1905  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1906  }
  1907  
  1908  // ScheduledSnapshotsConfig: The configuration for scheduled snapshot creation
  1909  // mechanism.
  1910  type ScheduledSnapshotsConfig struct {
  1911  	// Enabled: Optional. Whether scheduled snapshots creation is enabled.
  1912  	Enabled bool `json:"enabled,omitempty"`
  1913  	// SnapshotCreationSchedule: Optional. The cron expression representing the
  1914  	// time when snapshots creation mechanism runs. This field is subject to
  1915  	// additional validation around frequency of execution.
  1916  	SnapshotCreationSchedule string `json:"snapshotCreationSchedule,omitempty"`
  1917  	// SnapshotLocation: Optional. The Cloud Storage location for storing
  1918  	// automatically created snapshots.
  1919  	SnapshotLocation string `json:"snapshotLocation,omitempty"`
  1920  	// TimeZone: Optional. Time zone that sets the context to interpret
  1921  	// snapshot_creation_schedule.
  1922  	TimeZone string `json:"timeZone,omitempty"`
  1923  	// ForceSendFields is a list of field names (e.g. "Enabled") to unconditionally
  1924  	// include in API requests. By default, fields with empty or default values are
  1925  	// omitted from API requests. See
  1926  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1927  	// details.
  1928  	ForceSendFields []string `json:"-"`
  1929  	// NullFields is a list of field names (e.g. "Enabled") to include in API
  1930  	// requests with the JSON null value. By default, fields with empty values are
  1931  	// omitted from API requests. See
  1932  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1933  	NullFields []string `json:"-"`
  1934  }
  1935  
  1936  func (s *ScheduledSnapshotsConfig) MarshalJSON() ([]byte, error) {
  1937  	type NoMethod ScheduledSnapshotsConfig
  1938  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1939  }
  1940  
  1941  // SchedulerResource: Configuration for resources used by Airflow schedulers.
  1942  type SchedulerResource struct {
  1943  	// Count: Optional. The number of schedulers.
  1944  	Count int64 `json:"count,omitempty"`
  1945  	// Cpu: Optional. CPU request and limit for a single Airflow scheduler replica.
  1946  	Cpu float64 `json:"cpu,omitempty"`
  1947  	// MemoryGb: Optional. Memory (GB) request and limit for a single Airflow
  1948  	// scheduler replica.
  1949  	MemoryGb float64 `json:"memoryGb,omitempty"`
  1950  	// StorageGb: Optional. Storage (GB) request and limit for a single Airflow
  1951  	// scheduler replica.
  1952  	StorageGb float64 `json:"storageGb,omitempty"`
  1953  	// ForceSendFields is a list of field names (e.g. "Count") to unconditionally
  1954  	// include in API requests. By default, fields with empty or default values are
  1955  	// omitted from API requests. See
  1956  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1957  	// details.
  1958  	ForceSendFields []string `json:"-"`
  1959  	// NullFields is a list of field names (e.g. "Count") to include in API
  1960  	// requests with the JSON null value. By default, fields with empty values are
  1961  	// omitted from API requests. See
  1962  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1963  	NullFields []string `json:"-"`
  1964  }
  1965  
  1966  func (s *SchedulerResource) MarshalJSON() ([]byte, error) {
  1967  	type NoMethod SchedulerResource
  1968  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1969  }
  1970  
  1971  func (s *SchedulerResource) UnmarshalJSON(data []byte) error {
  1972  	type NoMethod SchedulerResource
  1973  	var s1 struct {
  1974  		Cpu       gensupport.JSONFloat64 `json:"cpu"`
  1975  		MemoryGb  gensupport.JSONFloat64 `json:"memoryGb"`
  1976  		StorageGb gensupport.JSONFloat64 `json:"storageGb"`
  1977  		*NoMethod
  1978  	}
  1979  	s1.NoMethod = (*NoMethod)(s)
  1980  	if err := json.Unmarshal(data, &s1); err != nil {
  1981  		return err
  1982  	}
  1983  	s.Cpu = float64(s1.Cpu)
  1984  	s.MemoryGb = float64(s1.MemoryGb)
  1985  	s.StorageGb = float64(s1.StorageGb)
  1986  	return nil
  1987  }
  1988  
  1989  // SoftwareConfig: Specifies the selection and configuration of software inside
  1990  // the environment.
  1991  type SoftwareConfig struct {
  1992  	// AirflowConfigOverrides: Optional. Apache Airflow configuration properties to
  1993  	// override. Property keys contain the section and property names, separated by
  1994  	// a hyphen, for example "core-dags_are_paused_at_creation". Section names must
  1995  	// not contain hyphens ("-"), opening square brackets ("["), or closing square
  1996  	// brackets ("]"). The property name must not be empty and must not contain an
  1997  	// equals sign ("=") or semicolon (";"). Section and property names must not
  1998  	// contain a period ("."). Apache Airflow configuration property names must be
  1999  	// written in snake_case (https://en.wikipedia.org/wiki/Snake_case). Property
  2000  	// values can contain any character, and can be written in any lower/upper case
  2001  	// format. Certain Apache Airflow configuration property values are blocked
  2002  	// (/composer/docs/concepts/airflow-configurations), and cannot be overridden.
  2003  	AirflowConfigOverrides map[string]string `json:"airflowConfigOverrides,omitempty"`
  2004  	// CloudDataLineageIntegration: Optional. The configuration for Cloud Data
  2005  	// Lineage integration.
  2006  	CloudDataLineageIntegration *CloudDataLineageIntegration `json:"cloudDataLineageIntegration,omitempty"`
  2007  	// EnvVariables: Optional. Additional environment variables to provide to the
  2008  	// Apache Airflow scheduler, worker, and webserver processes. Environment
  2009  	// variable names must match the regular expression `a-zA-Z_*`. They cannot
  2010  	// specify Apache Airflow software configuration overrides (they cannot match
  2011  	// the regular expression `AIRFLOW__[A-Z0-9_]+__[A-Z0-9_]+`), and they cannot
  2012  	// match any of the following reserved names: * `AIRFLOW_HOME` * `C_FORCE_ROOT`
  2013  	// * `CONTAINER_NAME` * `DAGS_FOLDER` * `GCP_PROJECT` * `GCS_BUCKET` *
  2014  	// `GKE_CLUSTER_NAME` * `SQL_DATABASE` * `SQL_INSTANCE` * `SQL_PASSWORD` *
  2015  	// `SQL_PROJECT` * `SQL_REGION` * `SQL_USER`
  2016  	EnvVariables map[string]string `json:"envVariables,omitempty"`
  2017  	// ImageVersion: The version of the software running in the environment. This
  2018  	// encapsulates both the version of Cloud Composer functionality and the
  2019  	// version of Apache Airflow. It must match the regular expression
  2020  	// `composer-([0-9]+(\.[0-9]+\.[0-9]+(-preview\.[0-9]+)?)?|latest)-airflow-([0-9
  2021  	// ]+(\.[0-9]+(\.[0-9]+)?)?)`. When used as input, the server also checks if
  2022  	// the provided version is supported and denies the request for an unsupported
  2023  	// version. The Cloud Composer portion of the image version is a full semantic
  2024  	// version (https://semver.org), or an alias in the form of major version
  2025  	// number or `latest`. When an alias is provided, the server replaces it with
  2026  	// the current Cloud Composer version that satisfies the alias. The Apache
  2027  	// Airflow portion of the image version is a full semantic version that points
  2028  	// to one of the supported Apache Airflow versions, or an alias in the form of
  2029  	// only major or major.minor versions specified. When an alias is provided, the
  2030  	// server replaces it with the latest Apache Airflow version that satisfies the
  2031  	// alias and is supported in the given Cloud Composer version. In all cases,
  2032  	// the resolved image version is stored in the same field. See also version
  2033  	// list (/composer/docs/concepts/versioning/composer-versions) and versioning
  2034  	// overview (/composer/docs/concepts/versioning/composer-versioning-overview).
  2035  	ImageVersion string `json:"imageVersion,omitempty"`
  2036  	// PypiPackages: Optional. Custom Python Package Index (PyPI) packages to be
  2037  	// installed in the environment. Keys refer to the lowercase package name such
  2038  	// as "numpy" and values are the lowercase extras and version specifier such as
  2039  	// "==1.12.0", "[devel,gcp_api]", or "[devel]>=1.8.2, <1.9.2". To specify a
  2040  	// package without pinning it to a version specifier, use the empty string as
  2041  	// the value.
  2042  	PypiPackages map[string]string `json:"pypiPackages,omitempty"`
  2043  	// PythonVersion: Optional. The major version of Python used to run the Apache
  2044  	// Airflow scheduler, worker, and webserver processes. Can be set to '2' or
  2045  	// '3'. If not specified, the default is '3'. Cannot be updated. This field is
  2046  	// only supported for Cloud Composer environments in versions
  2047  	// composer-1.*.*-airflow-*.*.*. Environments in newer versions always use
  2048  	// Python major version 3.
  2049  	PythonVersion string `json:"pythonVersion,omitempty"`
  2050  	// SchedulerCount: Optional. The number of schedulers for Airflow. This field
  2051  	// is supported for Cloud Composer environments in versions
  2052  	// composer-1.*.*-airflow-2.*.*.
  2053  	SchedulerCount int64 `json:"schedulerCount,omitempty"`
  2054  	// WebServerPluginsMode: Optional. Whether or not the web server uses custom
  2055  	// plugins. If unspecified, the field defaults to `PLUGINS_ENABLED`. This field
  2056  	// is supported for Cloud Composer environments in versions
  2057  	// composer-3.*.*-airflow-*.*.* and newer.
  2058  	//
  2059  	// Possible values:
  2060  	//   "WEB_SERVER_PLUGINS_MODE_UNSPECIFIED" - Default mode.
  2061  	//   "PLUGINS_DISABLED" - Web server plugins are not supported.
  2062  	//   "PLUGINS_ENABLED" - Web server plugins are supported.
  2063  	WebServerPluginsMode string `json:"webServerPluginsMode,omitempty"`
  2064  	// ForceSendFields is a list of field names (e.g. "AirflowConfigOverrides") to
  2065  	// unconditionally include in API requests. By default, fields with empty or
  2066  	// default values are omitted from API requests. See
  2067  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2068  	// details.
  2069  	ForceSendFields []string `json:"-"`
  2070  	// NullFields is a list of field names (e.g. "AirflowConfigOverrides") to
  2071  	// include in API requests with the JSON null value. By default, fields with
  2072  	// empty values are omitted from API requests. See
  2073  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2074  	NullFields []string `json:"-"`
  2075  }
  2076  
  2077  func (s *SoftwareConfig) MarshalJSON() ([]byte, error) {
  2078  	type NoMethod SoftwareConfig
  2079  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2080  }
  2081  
  2082  // Status: The `Status` type defines a logical error model that is suitable for
  2083  // different programming environments, including REST APIs and RPC APIs. It is
  2084  // used by gRPC (https://github.com/grpc). Each `Status` message contains three
  2085  // pieces of data: error code, error message, and error details. You can find
  2086  // out more about this error model and how to work with it in the API Design
  2087  // Guide (https://cloud.google.com/apis/design/errors).
  2088  type Status struct {
  2089  	// Code: The status code, which should be an enum value of google.rpc.Code.
  2090  	Code int64 `json:"code,omitempty"`
  2091  	// Details: A list of messages that carry the error details. There is a common
  2092  	// set of message types for APIs to use.
  2093  	Details []googleapi.RawMessage `json:"details,omitempty"`
  2094  	// Message: A developer-facing error message, which should be in English. Any
  2095  	// user-facing error message should be localized and sent in the
  2096  	// google.rpc.Status.details field, or localized by the client.
  2097  	Message string `json:"message,omitempty"`
  2098  	// ForceSendFields is a list of field names (e.g. "Code") to unconditionally
  2099  	// include in API requests. By default, fields with empty or default values are
  2100  	// omitted from API requests. See
  2101  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2102  	// details.
  2103  	ForceSendFields []string `json:"-"`
  2104  	// NullFields is a list of field names (e.g. "Code") to include in API requests
  2105  	// with the JSON null value. By default, fields with empty values are omitted
  2106  	// from API requests. See
  2107  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2108  	NullFields []string `json:"-"`
  2109  }
  2110  
  2111  func (s *Status) MarshalJSON() ([]byte, error) {
  2112  	type NoMethod Status
  2113  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2114  }
  2115  
  2116  // StopAirflowCommandRequest: Stop Airflow Command request.
  2117  type StopAirflowCommandRequest struct {
  2118  	// ExecutionId: The unique ID of the command execution.
  2119  	ExecutionId string `json:"executionId,omitempty"`
  2120  	// Force: If true, the execution is terminated forcefully (SIGKILL). If false,
  2121  	// the execution is stopped gracefully, giving it time for cleanup.
  2122  	Force bool `json:"force,omitempty"`
  2123  	// Pod: The name of the pod where the command is executed.
  2124  	Pod string `json:"pod,omitempty"`
  2125  	// PodNamespace: The namespace of the pod where the command is executed.
  2126  	PodNamespace string `json:"podNamespace,omitempty"`
  2127  	// ForceSendFields is a list of field names (e.g. "ExecutionId") to
  2128  	// unconditionally include in API requests. By default, fields with empty or
  2129  	// default values are omitted from API requests. See
  2130  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2131  	// details.
  2132  	ForceSendFields []string `json:"-"`
  2133  	// NullFields is a list of field names (e.g. "ExecutionId") to include in API
  2134  	// requests with the JSON null value. By default, fields with empty values are
  2135  	// omitted from API requests. See
  2136  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2137  	NullFields []string `json:"-"`
  2138  }
  2139  
  2140  func (s *StopAirflowCommandRequest) MarshalJSON() ([]byte, error) {
  2141  	type NoMethod StopAirflowCommandRequest
  2142  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2143  }
  2144  
  2145  // StopAirflowCommandResponse: Response to StopAirflowCommandRequest.
  2146  type StopAirflowCommandResponse struct {
  2147  	// IsDone: Whether the execution is still running.
  2148  	IsDone bool `json:"isDone,omitempty"`
  2149  	// Output: Output message from stopping execution request.
  2150  	Output []string `json:"output,omitempty"`
  2151  
  2152  	// ServerResponse contains the HTTP response code and headers from the server.
  2153  	googleapi.ServerResponse `json:"-"`
  2154  	// ForceSendFields is a list of field names (e.g. "IsDone") to unconditionally
  2155  	// include in API requests. By default, fields with empty or default values are
  2156  	// omitted from API requests. See
  2157  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2158  	// details.
  2159  	ForceSendFields []string `json:"-"`
  2160  	// NullFields is a list of field names (e.g. "IsDone") to include in API
  2161  	// requests with the JSON null value. By default, fields with empty values are
  2162  	// omitted from API requests. See
  2163  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2164  	NullFields []string `json:"-"`
  2165  }
  2166  
  2167  func (s *StopAirflowCommandResponse) MarshalJSON() ([]byte, error) {
  2168  	type NoMethod StopAirflowCommandResponse
  2169  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2170  }
  2171  
  2172  // StorageConfig: The configuration for data storage in the environment.
  2173  type StorageConfig struct {
  2174  	// Bucket: Optional. The name of the Cloud Storage bucket used by the
  2175  	// environment. No `gs://` prefix.
  2176  	Bucket string `json:"bucket,omitempty"`
  2177  	// ForceSendFields is a list of field names (e.g. "Bucket") to unconditionally
  2178  	// include in API requests. By default, fields with empty or default values are
  2179  	// omitted from API requests. See
  2180  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2181  	// details.
  2182  	ForceSendFields []string `json:"-"`
  2183  	// NullFields is a list of field names (e.g. "Bucket") to include in API
  2184  	// requests with the JSON null value. By default, fields with empty values are
  2185  	// omitted from API requests. See
  2186  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2187  	NullFields []string `json:"-"`
  2188  }
  2189  
  2190  func (s *StorageConfig) MarshalJSON() ([]byte, error) {
  2191  	type NoMethod StorageConfig
  2192  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2193  }
  2194  
  2195  // TaskLogsRetentionConfig: The configuration setting for Task Logs.
  2196  type TaskLogsRetentionConfig struct {
  2197  	// StorageMode: Optional. The mode of storage for Airflow workers task logs.
  2198  	//
  2199  	// Possible values:
  2200  	//   "TASK_LOGS_STORAGE_MODE_UNSPECIFIED" - This configuration is not specified
  2201  	// by the user.
  2202  	//   "CLOUD_LOGGING_AND_CLOUD_STORAGE" - Store task logs in Cloud Logging and
  2203  	// in the environment's Cloud Storage bucket.
  2204  	//   "CLOUD_LOGGING_ONLY" - Store task logs in Cloud Logging only.
  2205  	StorageMode string `json:"storageMode,omitempty"`
  2206  	// ForceSendFields is a list of field names (e.g. "StorageMode") to
  2207  	// unconditionally include in API requests. By default, fields with empty or
  2208  	// default values are omitted from API requests. See
  2209  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2210  	// details.
  2211  	ForceSendFields []string `json:"-"`
  2212  	// NullFields is a list of field names (e.g. "StorageMode") to include in API
  2213  	// requests with the JSON null value. By default, fields with empty values are
  2214  	// omitted from API requests. See
  2215  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2216  	NullFields []string `json:"-"`
  2217  }
  2218  
  2219  func (s *TaskLogsRetentionConfig) MarshalJSON() ([]byte, error) {
  2220  	type NoMethod TaskLogsRetentionConfig
  2221  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2222  }
  2223  
  2224  // TriggererResource: Configuration for resources used by Airflow triggerers.
  2225  type TriggererResource struct {
  2226  	// Count: Optional. The number of triggerers.
  2227  	Count int64 `json:"count,omitempty"`
  2228  	// Cpu: Optional. CPU request and limit for a single Airflow triggerer replica.
  2229  	Cpu float64 `json:"cpu,omitempty"`
  2230  	// MemoryGb: Optional. Memory (GB) request and limit for a single Airflow
  2231  	// triggerer replica.
  2232  	MemoryGb float64 `json:"memoryGb,omitempty"`
  2233  	// ForceSendFields is a list of field names (e.g. "Count") to unconditionally
  2234  	// include in API requests. By default, fields with empty or default values are
  2235  	// omitted from API requests. See
  2236  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2237  	// details.
  2238  	ForceSendFields []string `json:"-"`
  2239  	// NullFields is a list of field names (e.g. "Count") to include in API
  2240  	// requests with the JSON null value. By default, fields with empty values are
  2241  	// omitted from API requests. See
  2242  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2243  	NullFields []string `json:"-"`
  2244  }
  2245  
  2246  func (s *TriggererResource) MarshalJSON() ([]byte, error) {
  2247  	type NoMethod TriggererResource
  2248  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2249  }
  2250  
  2251  func (s *TriggererResource) UnmarshalJSON(data []byte) error {
  2252  	type NoMethod TriggererResource
  2253  	var s1 struct {
  2254  		Cpu      gensupport.JSONFloat64 `json:"cpu"`
  2255  		MemoryGb gensupport.JSONFloat64 `json:"memoryGb"`
  2256  		*NoMethod
  2257  	}
  2258  	s1.NoMethod = (*NoMethod)(s)
  2259  	if err := json.Unmarshal(data, &s1); err != nil {
  2260  		return err
  2261  	}
  2262  	s.Cpu = float64(s1.Cpu)
  2263  	s.MemoryGb = float64(s1.MemoryGb)
  2264  	return nil
  2265  }
  2266  
  2267  // UserWorkloadsConfigMap: User workloads ConfigMap used by Airflow tasks that
  2268  // run with Kubernetes executor or KubernetesPodOperator.
  2269  type UserWorkloadsConfigMap struct {
  2270  	// Data: Optional. The "data" field of Kubernetes ConfigMap, organized in
  2271  	// key-value pairs. For details see:
  2272  	// https://kubernetes.io/docs/concepts/configuration/configmap/
  2273  	Data map[string]string `json:"data,omitempty"`
  2274  	// Name: Identifier. The resource name of the ConfigMap, in the form:
  2275  	// "projects/{projectId}/locations/{locationId}/environments/{environmentId}/use
  2276  	// rWorkloadsConfigMaps/{userWorkloadsConfigMapId}"
  2277  	Name string `json:"name,omitempty"`
  2278  
  2279  	// ServerResponse contains the HTTP response code and headers from the server.
  2280  	googleapi.ServerResponse `json:"-"`
  2281  	// ForceSendFields is a list of field names (e.g. "Data") to unconditionally
  2282  	// include in API requests. By default, fields with empty or default values are
  2283  	// omitted from API requests. See
  2284  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2285  	// details.
  2286  	ForceSendFields []string `json:"-"`
  2287  	// NullFields is a list of field names (e.g. "Data") to include in API requests
  2288  	// with the JSON null value. By default, fields with empty values are omitted
  2289  	// from API requests. See
  2290  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2291  	NullFields []string `json:"-"`
  2292  }
  2293  
  2294  func (s *UserWorkloadsConfigMap) MarshalJSON() ([]byte, error) {
  2295  	type NoMethod UserWorkloadsConfigMap
  2296  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2297  }
  2298  
  2299  // UserWorkloadsSecret: User workloads Secret used by Airflow tasks that run
  2300  // with Kubernetes executor or KubernetesPodOperator.
  2301  type UserWorkloadsSecret struct {
  2302  	// Data: Optional. The "data" field of Kubernetes Secret, organized in
  2303  	// key-value pairs, which can contain sensitive values such as a password, a
  2304  	// token, or a key. The values for all keys have to be base64-encoded strings.
  2305  	// For details see: https://kubernetes.io/docs/concepts/configuration/secret/
  2306  	Data map[string]string `json:"data,omitempty"`
  2307  	// Name: Identifier. The resource name of the Secret, in the form:
  2308  	// "projects/{projectId}/locations/{locationId}/environments/{environmentId}/use
  2309  	// rWorkloadsSecrets/{userWorkloadsSecretId}"
  2310  	Name string `json:"name,omitempty"`
  2311  
  2312  	// ServerResponse contains the HTTP response code and headers from the server.
  2313  	googleapi.ServerResponse `json:"-"`
  2314  	// ForceSendFields is a list of field names (e.g. "Data") to unconditionally
  2315  	// include in API requests. By default, fields with empty or default values are
  2316  	// omitted from API requests. See
  2317  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2318  	// details.
  2319  	ForceSendFields []string `json:"-"`
  2320  	// NullFields is a list of field names (e.g. "Data") to include in API requests
  2321  	// with the JSON null value. By default, fields with empty values are omitted
  2322  	// from API requests. See
  2323  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2324  	NullFields []string `json:"-"`
  2325  }
  2326  
  2327  func (s *UserWorkloadsSecret) MarshalJSON() ([]byte, error) {
  2328  	type NoMethod UserWorkloadsSecret
  2329  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2330  }
  2331  
  2332  // WebServerConfig: The configuration settings for the Airflow web server App
  2333  // Engine instance. Supported for Cloud Composer environments in versions
  2334  // composer-1.*.*-airflow-*.*.*.
  2335  type WebServerConfig struct {
  2336  	// MachineType: Optional. Machine type on which Airflow web server is running.
  2337  	// It has to be one of: composer-n1-webserver-2, composer-n1-webserver-4 or
  2338  	// composer-n1-webserver-8. If not specified, composer-n1-webserver-2 will be
  2339  	// used. Value custom is returned only in response, if Airflow web server
  2340  	// parameters were manually changed to a non-standard values.
  2341  	MachineType string `json:"machineType,omitempty"`
  2342  	// ForceSendFields is a list of field names (e.g. "MachineType") to
  2343  	// unconditionally include in API requests. By default, fields with empty or
  2344  	// default values are omitted from API requests. See
  2345  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2346  	// details.
  2347  	ForceSendFields []string `json:"-"`
  2348  	// NullFields is a list of field names (e.g. "MachineType") to include in API
  2349  	// requests with the JSON null value. By default, fields with empty values are
  2350  	// omitted from API requests. See
  2351  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2352  	NullFields []string `json:"-"`
  2353  }
  2354  
  2355  func (s *WebServerConfig) MarshalJSON() ([]byte, error) {
  2356  	type NoMethod WebServerConfig
  2357  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2358  }
  2359  
  2360  // WebServerNetworkAccessControl: Network-level access control policy for the
  2361  // Airflow web server.
  2362  type WebServerNetworkAccessControl struct {
  2363  	// AllowedIpRanges: A collection of allowed IP ranges with descriptions.
  2364  	AllowedIpRanges []*AllowedIpRange `json:"allowedIpRanges,omitempty"`
  2365  	// ForceSendFields is a list of field names (e.g. "AllowedIpRanges") to
  2366  	// unconditionally include in API requests. By default, fields with empty or
  2367  	// default values are omitted from API requests. See
  2368  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2369  	// details.
  2370  	ForceSendFields []string `json:"-"`
  2371  	// NullFields is a list of field names (e.g. "AllowedIpRanges") to include in
  2372  	// API requests with the JSON null value. By default, fields with empty values
  2373  	// are omitted from API requests. See
  2374  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2375  	NullFields []string `json:"-"`
  2376  }
  2377  
  2378  func (s *WebServerNetworkAccessControl) MarshalJSON() ([]byte, error) {
  2379  	type NoMethod WebServerNetworkAccessControl
  2380  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2381  }
  2382  
  2383  // WebServerResource: Configuration for resources used by Airflow web server.
  2384  type WebServerResource struct {
  2385  	// Cpu: Optional. CPU request and limit for Airflow web server.
  2386  	Cpu float64 `json:"cpu,omitempty"`
  2387  	// MemoryGb: Optional. Memory (GB) request and limit for Airflow web server.
  2388  	MemoryGb float64 `json:"memoryGb,omitempty"`
  2389  	// StorageGb: Optional. Storage (GB) request and limit for Airflow web server.
  2390  	StorageGb float64 `json:"storageGb,omitempty"`
  2391  	// ForceSendFields is a list of field names (e.g. "Cpu") to unconditionally
  2392  	// include in API requests. By default, fields with empty or default values are
  2393  	// omitted from API requests. See
  2394  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2395  	// details.
  2396  	ForceSendFields []string `json:"-"`
  2397  	// NullFields is a list of field names (e.g. "Cpu") to include in API requests
  2398  	// with the JSON null value. By default, fields with empty values are omitted
  2399  	// from API requests. See
  2400  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2401  	NullFields []string `json:"-"`
  2402  }
  2403  
  2404  func (s *WebServerResource) MarshalJSON() ([]byte, error) {
  2405  	type NoMethod WebServerResource
  2406  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2407  }
  2408  
  2409  func (s *WebServerResource) UnmarshalJSON(data []byte) error {
  2410  	type NoMethod WebServerResource
  2411  	var s1 struct {
  2412  		Cpu       gensupport.JSONFloat64 `json:"cpu"`
  2413  		MemoryGb  gensupport.JSONFloat64 `json:"memoryGb"`
  2414  		StorageGb gensupport.JSONFloat64 `json:"storageGb"`
  2415  		*NoMethod
  2416  	}
  2417  	s1.NoMethod = (*NoMethod)(s)
  2418  	if err := json.Unmarshal(data, &s1); err != nil {
  2419  		return err
  2420  	}
  2421  	s.Cpu = float64(s1.Cpu)
  2422  	s.MemoryGb = float64(s1.MemoryGb)
  2423  	s.StorageGb = float64(s1.StorageGb)
  2424  	return nil
  2425  }
  2426  
  2427  // WorkerResource: Configuration for resources used by Airflow workers.
  2428  type WorkerResource struct {
  2429  	// Cpu: Optional. CPU request and limit for a single Airflow worker replica.
  2430  	Cpu float64 `json:"cpu,omitempty"`
  2431  	// MaxCount: Optional. Maximum number of workers for autoscaling.
  2432  	MaxCount int64 `json:"maxCount,omitempty"`
  2433  	// MemoryGb: Optional. Memory (GB) request and limit for a single Airflow
  2434  	// worker replica.
  2435  	MemoryGb float64 `json:"memoryGb,omitempty"`
  2436  	// MinCount: Optional. Minimum number of workers for autoscaling.
  2437  	MinCount int64 `json:"minCount,omitempty"`
  2438  	// StorageGb: Optional. Storage (GB) request and limit for a single Airflow
  2439  	// worker replica.
  2440  	StorageGb float64 `json:"storageGb,omitempty"`
  2441  	// ForceSendFields is a list of field names (e.g. "Cpu") to unconditionally
  2442  	// include in API requests. By default, fields with empty or default values are
  2443  	// omitted from API requests. See
  2444  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2445  	// details.
  2446  	ForceSendFields []string `json:"-"`
  2447  	// NullFields is a list of field names (e.g. "Cpu") to include in API requests
  2448  	// with the JSON null value. By default, fields with empty values are omitted
  2449  	// from API requests. See
  2450  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2451  	NullFields []string `json:"-"`
  2452  }
  2453  
  2454  func (s *WorkerResource) MarshalJSON() ([]byte, error) {
  2455  	type NoMethod WorkerResource
  2456  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2457  }
  2458  
  2459  func (s *WorkerResource) UnmarshalJSON(data []byte) error {
  2460  	type NoMethod WorkerResource
  2461  	var s1 struct {
  2462  		Cpu       gensupport.JSONFloat64 `json:"cpu"`
  2463  		MemoryGb  gensupport.JSONFloat64 `json:"memoryGb"`
  2464  		StorageGb gensupport.JSONFloat64 `json:"storageGb"`
  2465  		*NoMethod
  2466  	}
  2467  	s1.NoMethod = (*NoMethod)(s)
  2468  	if err := json.Unmarshal(data, &s1); err != nil {
  2469  		return err
  2470  	}
  2471  	s.Cpu = float64(s1.Cpu)
  2472  	s.MemoryGb = float64(s1.MemoryGb)
  2473  	s.StorageGb = float64(s1.StorageGb)
  2474  	return nil
  2475  }
  2476  
  2477  // WorkloadsConfig: The Kubernetes workloads configuration for GKE cluster
  2478  // associated with the Cloud Composer environment. Supported for Cloud Composer
  2479  // environments in versions composer-2.*.*-airflow-*.*.* and newer.
  2480  type WorkloadsConfig struct {
  2481  	// DagProcessor: Optional. Resources used by Airflow DAG processors. This field
  2482  	// is supported for Cloud Composer environments in versions
  2483  	// composer-3.*.*-airflow-*.*.* and newer.
  2484  	DagProcessor *DagProcessorResource `json:"dagProcessor,omitempty"`
  2485  	// Scheduler: Optional. Resources used by Airflow schedulers.
  2486  	Scheduler *SchedulerResource `json:"scheduler,omitempty"`
  2487  	// Triggerer: Optional. Resources used by Airflow triggerers.
  2488  	Triggerer *TriggererResource `json:"triggerer,omitempty"`
  2489  	// WebServer: Optional. Resources used by Airflow web server.
  2490  	WebServer *WebServerResource `json:"webServer,omitempty"`
  2491  	// Worker: Optional. Resources used by Airflow workers.
  2492  	Worker *WorkerResource `json:"worker,omitempty"`
  2493  	// ForceSendFields is a list of field names (e.g. "DagProcessor") to
  2494  	// unconditionally include in API requests. By default, fields with empty or
  2495  	// default values are omitted from API requests. See
  2496  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2497  	// details.
  2498  	ForceSendFields []string `json:"-"`
  2499  	// NullFields is a list of field names (e.g. "DagProcessor") to include in API
  2500  	// requests with the JSON null value. By default, fields with empty values are
  2501  	// omitted from API requests. See
  2502  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2503  	NullFields []string `json:"-"`
  2504  }
  2505  
  2506  func (s *WorkloadsConfig) MarshalJSON() ([]byte, error) {
  2507  	type NoMethod WorkloadsConfig
  2508  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2509  }
  2510  
  2511  type ProjectsLocationsEnvironmentsCheckUpgradeCall struct {
  2512  	s                   *Service
  2513  	environment         string
  2514  	checkupgraderequest *CheckUpgradeRequest
  2515  	urlParams_          gensupport.URLParams
  2516  	ctx_                context.Context
  2517  	header_             http.Header
  2518  }
  2519  
  2520  // CheckUpgrade: Check if an upgrade operation on the environment will succeed.
  2521  // In case of problems detailed info can be found in the returned Operation.
  2522  //
  2523  //   - environment: The resource name of the environment to check upgrade for, in
  2524  //     the form:
  2525  //     "projects/{projectId}/locations/{locationId}/environments/{environmentId}".
  2526  func (r *ProjectsLocationsEnvironmentsService) CheckUpgrade(environment string, checkupgraderequest *CheckUpgradeRequest) *ProjectsLocationsEnvironmentsCheckUpgradeCall {
  2527  	c := &ProjectsLocationsEnvironmentsCheckUpgradeCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  2528  	c.environment = environment
  2529  	c.checkupgraderequest = checkupgraderequest
  2530  	return c
  2531  }
  2532  
  2533  // Fields allows partial responses to be retrieved. See
  2534  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  2535  // details.
  2536  func (c *ProjectsLocationsEnvironmentsCheckUpgradeCall) Fields(s ...googleapi.Field) *ProjectsLocationsEnvironmentsCheckUpgradeCall {
  2537  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  2538  	return c
  2539  }
  2540  
  2541  // Context sets the context to be used in this call's Do method.
  2542  func (c *ProjectsLocationsEnvironmentsCheckUpgradeCall) Context(ctx context.Context) *ProjectsLocationsEnvironmentsCheckUpgradeCall {
  2543  	c.ctx_ = ctx
  2544  	return c
  2545  }
  2546  
  2547  // Header returns a http.Header that can be modified by the caller to add
  2548  // headers to the request.
  2549  func (c *ProjectsLocationsEnvironmentsCheckUpgradeCall) Header() http.Header {
  2550  	if c.header_ == nil {
  2551  		c.header_ = make(http.Header)
  2552  	}
  2553  	return c.header_
  2554  }
  2555  
  2556  func (c *ProjectsLocationsEnvironmentsCheckUpgradeCall) doRequest(alt string) (*http.Response, error) {
  2557  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  2558  	var body io.Reader = nil
  2559  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.checkupgraderequest)
  2560  	if err != nil {
  2561  		return nil, err
  2562  	}
  2563  	c.urlParams_.Set("alt", alt)
  2564  	c.urlParams_.Set("prettyPrint", "false")
  2565  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+environment}:checkUpgrade")
  2566  	urls += "?" + c.urlParams_.Encode()
  2567  	req, err := http.NewRequest("POST", urls, body)
  2568  	if err != nil {
  2569  		return nil, err
  2570  	}
  2571  	req.Header = reqHeaders
  2572  	googleapi.Expand(req.URL, map[string]string{
  2573  		"environment": c.environment,
  2574  	})
  2575  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  2576  }
  2577  
  2578  // Do executes the "composer.projects.locations.environments.checkUpgrade" call.
  2579  // Any non-2xx status code is an error. Response headers are in either
  2580  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  2581  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  2582  // whether the returned error was because http.StatusNotModified was returned.
  2583  func (c *ProjectsLocationsEnvironmentsCheckUpgradeCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  2584  	gensupport.SetOptions(c.urlParams_, opts...)
  2585  	res, err := c.doRequest("json")
  2586  	if res != nil && res.StatusCode == http.StatusNotModified {
  2587  		if res.Body != nil {
  2588  			res.Body.Close()
  2589  		}
  2590  		return nil, gensupport.WrapError(&googleapi.Error{
  2591  			Code:   res.StatusCode,
  2592  			Header: res.Header,
  2593  		})
  2594  	}
  2595  	if err != nil {
  2596  		return nil, err
  2597  	}
  2598  	defer googleapi.CloseBody(res)
  2599  	if err := googleapi.CheckResponse(res); err != nil {
  2600  		return nil, gensupport.WrapError(err)
  2601  	}
  2602  	ret := &Operation{
  2603  		ServerResponse: googleapi.ServerResponse{
  2604  			Header:         res.Header,
  2605  			HTTPStatusCode: res.StatusCode,
  2606  		},
  2607  	}
  2608  	target := &ret
  2609  	if err := gensupport.DecodeResponse(target, res); err != nil {
  2610  		return nil, err
  2611  	}
  2612  	return ret, nil
  2613  }
  2614  
  2615  type ProjectsLocationsEnvironmentsCreateCall struct {
  2616  	s           *Service
  2617  	parent      string
  2618  	environment *Environment
  2619  	urlParams_  gensupport.URLParams
  2620  	ctx_        context.Context
  2621  	header_     http.Header
  2622  }
  2623  
  2624  // Create: Create a new environment.
  2625  //
  2626  //   - parent: The parent must be of the form
  2627  //     "projects/{projectId}/locations/{locationId}".
  2628  func (r *ProjectsLocationsEnvironmentsService) Create(parent string, environment *Environment) *ProjectsLocationsEnvironmentsCreateCall {
  2629  	c := &ProjectsLocationsEnvironmentsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  2630  	c.parent = parent
  2631  	c.environment = environment
  2632  	return c
  2633  }
  2634  
  2635  // Fields allows partial responses to be retrieved. See
  2636  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  2637  // details.
  2638  func (c *ProjectsLocationsEnvironmentsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsEnvironmentsCreateCall {
  2639  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  2640  	return c
  2641  }
  2642  
  2643  // Context sets the context to be used in this call's Do method.
  2644  func (c *ProjectsLocationsEnvironmentsCreateCall) Context(ctx context.Context) *ProjectsLocationsEnvironmentsCreateCall {
  2645  	c.ctx_ = ctx
  2646  	return c
  2647  }
  2648  
  2649  // Header returns a http.Header that can be modified by the caller to add
  2650  // headers to the request.
  2651  func (c *ProjectsLocationsEnvironmentsCreateCall) Header() http.Header {
  2652  	if c.header_ == nil {
  2653  		c.header_ = make(http.Header)
  2654  	}
  2655  	return c.header_
  2656  }
  2657  
  2658  func (c *ProjectsLocationsEnvironmentsCreateCall) doRequest(alt string) (*http.Response, error) {
  2659  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  2660  	var body io.Reader = nil
  2661  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.environment)
  2662  	if err != nil {
  2663  		return nil, err
  2664  	}
  2665  	c.urlParams_.Set("alt", alt)
  2666  	c.urlParams_.Set("prettyPrint", "false")
  2667  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/environments")
  2668  	urls += "?" + c.urlParams_.Encode()
  2669  	req, err := http.NewRequest("POST", urls, body)
  2670  	if err != nil {
  2671  		return nil, err
  2672  	}
  2673  	req.Header = reqHeaders
  2674  	googleapi.Expand(req.URL, map[string]string{
  2675  		"parent": c.parent,
  2676  	})
  2677  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  2678  }
  2679  
  2680  // Do executes the "composer.projects.locations.environments.create" call.
  2681  // Any non-2xx status code is an error. Response headers are in either
  2682  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  2683  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  2684  // whether the returned error was because http.StatusNotModified was returned.
  2685  func (c *ProjectsLocationsEnvironmentsCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  2686  	gensupport.SetOptions(c.urlParams_, opts...)
  2687  	res, err := c.doRequest("json")
  2688  	if res != nil && res.StatusCode == http.StatusNotModified {
  2689  		if res.Body != nil {
  2690  			res.Body.Close()
  2691  		}
  2692  		return nil, gensupport.WrapError(&googleapi.Error{
  2693  			Code:   res.StatusCode,
  2694  			Header: res.Header,
  2695  		})
  2696  	}
  2697  	if err != nil {
  2698  		return nil, err
  2699  	}
  2700  	defer googleapi.CloseBody(res)
  2701  	if err := googleapi.CheckResponse(res); err != nil {
  2702  		return nil, gensupport.WrapError(err)
  2703  	}
  2704  	ret := &Operation{
  2705  		ServerResponse: googleapi.ServerResponse{
  2706  			Header:         res.Header,
  2707  			HTTPStatusCode: res.StatusCode,
  2708  		},
  2709  	}
  2710  	target := &ret
  2711  	if err := gensupport.DecodeResponse(target, res); err != nil {
  2712  		return nil, err
  2713  	}
  2714  	return ret, nil
  2715  }
  2716  
  2717  type ProjectsLocationsEnvironmentsDatabaseFailoverCall struct {
  2718  	s                       *Service
  2719  	environment             string
  2720  	databasefailoverrequest *DatabaseFailoverRequest
  2721  	urlParams_              gensupport.URLParams
  2722  	ctx_                    context.Context
  2723  	header_                 http.Header
  2724  }
  2725  
  2726  // DatabaseFailover: Triggers database failover (only for highly resilient
  2727  // environments).
  2728  //
  2729  //   - environment: Target environment:
  2730  //     "projects/{projectId}/locations/{locationId}/environments/{environmentId}".
  2731  func (r *ProjectsLocationsEnvironmentsService) DatabaseFailover(environment string, databasefailoverrequest *DatabaseFailoverRequest) *ProjectsLocationsEnvironmentsDatabaseFailoverCall {
  2732  	c := &ProjectsLocationsEnvironmentsDatabaseFailoverCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  2733  	c.environment = environment
  2734  	c.databasefailoverrequest = databasefailoverrequest
  2735  	return c
  2736  }
  2737  
  2738  // Fields allows partial responses to be retrieved. See
  2739  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  2740  // details.
  2741  func (c *ProjectsLocationsEnvironmentsDatabaseFailoverCall) Fields(s ...googleapi.Field) *ProjectsLocationsEnvironmentsDatabaseFailoverCall {
  2742  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  2743  	return c
  2744  }
  2745  
  2746  // Context sets the context to be used in this call's Do method.
  2747  func (c *ProjectsLocationsEnvironmentsDatabaseFailoverCall) Context(ctx context.Context) *ProjectsLocationsEnvironmentsDatabaseFailoverCall {
  2748  	c.ctx_ = ctx
  2749  	return c
  2750  }
  2751  
  2752  // Header returns a http.Header that can be modified by the caller to add
  2753  // headers to the request.
  2754  func (c *ProjectsLocationsEnvironmentsDatabaseFailoverCall) Header() http.Header {
  2755  	if c.header_ == nil {
  2756  		c.header_ = make(http.Header)
  2757  	}
  2758  	return c.header_
  2759  }
  2760  
  2761  func (c *ProjectsLocationsEnvironmentsDatabaseFailoverCall) doRequest(alt string) (*http.Response, error) {
  2762  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  2763  	var body io.Reader = nil
  2764  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.databasefailoverrequest)
  2765  	if err != nil {
  2766  		return nil, err
  2767  	}
  2768  	c.urlParams_.Set("alt", alt)
  2769  	c.urlParams_.Set("prettyPrint", "false")
  2770  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+environment}:databaseFailover")
  2771  	urls += "?" + c.urlParams_.Encode()
  2772  	req, err := http.NewRequest("POST", urls, body)
  2773  	if err != nil {
  2774  		return nil, err
  2775  	}
  2776  	req.Header = reqHeaders
  2777  	googleapi.Expand(req.URL, map[string]string{
  2778  		"environment": c.environment,
  2779  	})
  2780  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  2781  }
  2782  
  2783  // Do executes the "composer.projects.locations.environments.databaseFailover" call.
  2784  // Any non-2xx status code is an error. Response headers are in either
  2785  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  2786  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  2787  // whether the returned error was because http.StatusNotModified was returned.
  2788  func (c *ProjectsLocationsEnvironmentsDatabaseFailoverCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  2789  	gensupport.SetOptions(c.urlParams_, opts...)
  2790  	res, err := c.doRequest("json")
  2791  	if res != nil && res.StatusCode == http.StatusNotModified {
  2792  		if res.Body != nil {
  2793  			res.Body.Close()
  2794  		}
  2795  		return nil, gensupport.WrapError(&googleapi.Error{
  2796  			Code:   res.StatusCode,
  2797  			Header: res.Header,
  2798  		})
  2799  	}
  2800  	if err != nil {
  2801  		return nil, err
  2802  	}
  2803  	defer googleapi.CloseBody(res)
  2804  	if err := googleapi.CheckResponse(res); err != nil {
  2805  		return nil, gensupport.WrapError(err)
  2806  	}
  2807  	ret := &Operation{
  2808  		ServerResponse: googleapi.ServerResponse{
  2809  			Header:         res.Header,
  2810  			HTTPStatusCode: res.StatusCode,
  2811  		},
  2812  	}
  2813  	target := &ret
  2814  	if err := gensupport.DecodeResponse(target, res); err != nil {
  2815  		return nil, err
  2816  	}
  2817  	return ret, nil
  2818  }
  2819  
  2820  type ProjectsLocationsEnvironmentsDeleteCall struct {
  2821  	s          *Service
  2822  	name       string
  2823  	urlParams_ gensupport.URLParams
  2824  	ctx_       context.Context
  2825  	header_    http.Header
  2826  }
  2827  
  2828  // Delete: Delete an environment.
  2829  //
  2830  //   - name: The environment to delete, in the form:
  2831  //     "projects/{projectId}/locations/{locationId}/environments/{environmentId}".
  2832  func (r *ProjectsLocationsEnvironmentsService) Delete(name string) *ProjectsLocationsEnvironmentsDeleteCall {
  2833  	c := &ProjectsLocationsEnvironmentsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  2834  	c.name = name
  2835  	return c
  2836  }
  2837  
  2838  // Fields allows partial responses to be retrieved. See
  2839  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  2840  // details.
  2841  func (c *ProjectsLocationsEnvironmentsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsEnvironmentsDeleteCall {
  2842  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  2843  	return c
  2844  }
  2845  
  2846  // Context sets the context to be used in this call's Do method.
  2847  func (c *ProjectsLocationsEnvironmentsDeleteCall) Context(ctx context.Context) *ProjectsLocationsEnvironmentsDeleteCall {
  2848  	c.ctx_ = ctx
  2849  	return c
  2850  }
  2851  
  2852  // Header returns a http.Header that can be modified by the caller to add
  2853  // headers to the request.
  2854  func (c *ProjectsLocationsEnvironmentsDeleteCall) Header() http.Header {
  2855  	if c.header_ == nil {
  2856  		c.header_ = make(http.Header)
  2857  	}
  2858  	return c.header_
  2859  }
  2860  
  2861  func (c *ProjectsLocationsEnvironmentsDeleteCall) doRequest(alt string) (*http.Response, error) {
  2862  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  2863  	var body io.Reader = nil
  2864  	c.urlParams_.Set("alt", alt)
  2865  	c.urlParams_.Set("prettyPrint", "false")
  2866  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
  2867  	urls += "?" + c.urlParams_.Encode()
  2868  	req, err := http.NewRequest("DELETE", urls, body)
  2869  	if err != nil {
  2870  		return nil, err
  2871  	}
  2872  	req.Header = reqHeaders
  2873  	googleapi.Expand(req.URL, map[string]string{
  2874  		"name": c.name,
  2875  	})
  2876  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  2877  }
  2878  
  2879  // Do executes the "composer.projects.locations.environments.delete" call.
  2880  // Any non-2xx status code is an error. Response headers are in either
  2881  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  2882  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  2883  // whether the returned error was because http.StatusNotModified was returned.
  2884  func (c *ProjectsLocationsEnvironmentsDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  2885  	gensupport.SetOptions(c.urlParams_, opts...)
  2886  	res, err := c.doRequest("json")
  2887  	if res != nil && res.StatusCode == http.StatusNotModified {
  2888  		if res.Body != nil {
  2889  			res.Body.Close()
  2890  		}
  2891  		return nil, gensupport.WrapError(&googleapi.Error{
  2892  			Code:   res.StatusCode,
  2893  			Header: res.Header,
  2894  		})
  2895  	}
  2896  	if err != nil {
  2897  		return nil, err
  2898  	}
  2899  	defer googleapi.CloseBody(res)
  2900  	if err := googleapi.CheckResponse(res); err != nil {
  2901  		return nil, gensupport.WrapError(err)
  2902  	}
  2903  	ret := &Operation{
  2904  		ServerResponse: googleapi.ServerResponse{
  2905  			Header:         res.Header,
  2906  			HTTPStatusCode: res.StatusCode,
  2907  		},
  2908  	}
  2909  	target := &ret
  2910  	if err := gensupport.DecodeResponse(target, res); err != nil {
  2911  		return nil, err
  2912  	}
  2913  	return ret, nil
  2914  }
  2915  
  2916  type ProjectsLocationsEnvironmentsExecuteAirflowCommandCall struct {
  2917  	s                            *Service
  2918  	environment                  string
  2919  	executeairflowcommandrequest *ExecuteAirflowCommandRequest
  2920  	urlParams_                   gensupport.URLParams
  2921  	ctx_                         context.Context
  2922  	header_                      http.Header
  2923  }
  2924  
  2925  // ExecuteAirflowCommand: Executes Airflow CLI command.
  2926  //
  2927  //   - environment: The resource name of the environment in the form:
  2928  //     "projects/{projectId}/locations/{locationId}/environments/{environmentId}".
  2929  func (r *ProjectsLocationsEnvironmentsService) ExecuteAirflowCommand(environment string, executeairflowcommandrequest *ExecuteAirflowCommandRequest) *ProjectsLocationsEnvironmentsExecuteAirflowCommandCall {
  2930  	c := &ProjectsLocationsEnvironmentsExecuteAirflowCommandCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  2931  	c.environment = environment
  2932  	c.executeairflowcommandrequest = executeairflowcommandrequest
  2933  	return c
  2934  }
  2935  
  2936  // Fields allows partial responses to be retrieved. See
  2937  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  2938  // details.
  2939  func (c *ProjectsLocationsEnvironmentsExecuteAirflowCommandCall) Fields(s ...googleapi.Field) *ProjectsLocationsEnvironmentsExecuteAirflowCommandCall {
  2940  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  2941  	return c
  2942  }
  2943  
  2944  // Context sets the context to be used in this call's Do method.
  2945  func (c *ProjectsLocationsEnvironmentsExecuteAirflowCommandCall) Context(ctx context.Context) *ProjectsLocationsEnvironmentsExecuteAirflowCommandCall {
  2946  	c.ctx_ = ctx
  2947  	return c
  2948  }
  2949  
  2950  // Header returns a http.Header that can be modified by the caller to add
  2951  // headers to the request.
  2952  func (c *ProjectsLocationsEnvironmentsExecuteAirflowCommandCall) Header() http.Header {
  2953  	if c.header_ == nil {
  2954  		c.header_ = make(http.Header)
  2955  	}
  2956  	return c.header_
  2957  }
  2958  
  2959  func (c *ProjectsLocationsEnvironmentsExecuteAirflowCommandCall) doRequest(alt string) (*http.Response, error) {
  2960  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  2961  	var body io.Reader = nil
  2962  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.executeairflowcommandrequest)
  2963  	if err != nil {
  2964  		return nil, err
  2965  	}
  2966  	c.urlParams_.Set("alt", alt)
  2967  	c.urlParams_.Set("prettyPrint", "false")
  2968  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+environment}:executeAirflowCommand")
  2969  	urls += "?" + c.urlParams_.Encode()
  2970  	req, err := http.NewRequest("POST", urls, body)
  2971  	if err != nil {
  2972  		return nil, err
  2973  	}
  2974  	req.Header = reqHeaders
  2975  	googleapi.Expand(req.URL, map[string]string{
  2976  		"environment": c.environment,
  2977  	})
  2978  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  2979  }
  2980  
  2981  // Do executes the "composer.projects.locations.environments.executeAirflowCommand" call.
  2982  // Any non-2xx status code is an error. Response headers are in either
  2983  // *ExecuteAirflowCommandResponse.ServerResponse.Header or (if a response was
  2984  // returned at all) in error.(*googleapi.Error).Header. Use
  2985  // googleapi.IsNotModified to check whether the returned error was because
  2986  // http.StatusNotModified was returned.
  2987  func (c *ProjectsLocationsEnvironmentsExecuteAirflowCommandCall) Do(opts ...googleapi.CallOption) (*ExecuteAirflowCommandResponse, error) {
  2988  	gensupport.SetOptions(c.urlParams_, opts...)
  2989  	res, err := c.doRequest("json")
  2990  	if res != nil && res.StatusCode == http.StatusNotModified {
  2991  		if res.Body != nil {
  2992  			res.Body.Close()
  2993  		}
  2994  		return nil, gensupport.WrapError(&googleapi.Error{
  2995  			Code:   res.StatusCode,
  2996  			Header: res.Header,
  2997  		})
  2998  	}
  2999  	if err != nil {
  3000  		return nil, err
  3001  	}
  3002  	defer googleapi.CloseBody(res)
  3003  	if err := googleapi.CheckResponse(res); err != nil {
  3004  		return nil, gensupport.WrapError(err)
  3005  	}
  3006  	ret := &ExecuteAirflowCommandResponse{
  3007  		ServerResponse: googleapi.ServerResponse{
  3008  			Header:         res.Header,
  3009  			HTTPStatusCode: res.StatusCode,
  3010  		},
  3011  	}
  3012  	target := &ret
  3013  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3014  		return nil, err
  3015  	}
  3016  	return ret, nil
  3017  }
  3018  
  3019  type ProjectsLocationsEnvironmentsFetchDatabasePropertiesCall struct {
  3020  	s            *Service
  3021  	environment  string
  3022  	urlParams_   gensupport.URLParams
  3023  	ifNoneMatch_ string
  3024  	ctx_         context.Context
  3025  	header_      http.Header
  3026  }
  3027  
  3028  // FetchDatabaseProperties: Fetches database properties.
  3029  //
  3030  //   - environment: The resource name of the environment, in the form:
  3031  //     "projects/{projectId}/locations/{locationId}/environments/{environmentId}".
  3032  func (r *ProjectsLocationsEnvironmentsService) FetchDatabaseProperties(environment string) *ProjectsLocationsEnvironmentsFetchDatabasePropertiesCall {
  3033  	c := &ProjectsLocationsEnvironmentsFetchDatabasePropertiesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3034  	c.environment = environment
  3035  	return c
  3036  }
  3037  
  3038  // Fields allows partial responses to be retrieved. See
  3039  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3040  // details.
  3041  func (c *ProjectsLocationsEnvironmentsFetchDatabasePropertiesCall) Fields(s ...googleapi.Field) *ProjectsLocationsEnvironmentsFetchDatabasePropertiesCall {
  3042  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3043  	return c
  3044  }
  3045  
  3046  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  3047  // object's ETag matches the given value. This is useful for getting updates
  3048  // only after the object has changed since the last request.
  3049  func (c *ProjectsLocationsEnvironmentsFetchDatabasePropertiesCall) IfNoneMatch(entityTag string) *ProjectsLocationsEnvironmentsFetchDatabasePropertiesCall {
  3050  	c.ifNoneMatch_ = entityTag
  3051  	return c
  3052  }
  3053  
  3054  // Context sets the context to be used in this call's Do method.
  3055  func (c *ProjectsLocationsEnvironmentsFetchDatabasePropertiesCall) Context(ctx context.Context) *ProjectsLocationsEnvironmentsFetchDatabasePropertiesCall {
  3056  	c.ctx_ = ctx
  3057  	return c
  3058  }
  3059  
  3060  // Header returns a http.Header that can be modified by the caller to add
  3061  // headers to the request.
  3062  func (c *ProjectsLocationsEnvironmentsFetchDatabasePropertiesCall) Header() http.Header {
  3063  	if c.header_ == nil {
  3064  		c.header_ = make(http.Header)
  3065  	}
  3066  	return c.header_
  3067  }
  3068  
  3069  func (c *ProjectsLocationsEnvironmentsFetchDatabasePropertiesCall) doRequest(alt string) (*http.Response, error) {
  3070  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  3071  	if c.ifNoneMatch_ != "" {
  3072  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  3073  	}
  3074  	var body io.Reader = nil
  3075  	c.urlParams_.Set("alt", alt)
  3076  	c.urlParams_.Set("prettyPrint", "false")
  3077  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+environment}:fetchDatabaseProperties")
  3078  	urls += "?" + c.urlParams_.Encode()
  3079  	req, err := http.NewRequest("GET", urls, body)
  3080  	if err != nil {
  3081  		return nil, err
  3082  	}
  3083  	req.Header = reqHeaders
  3084  	googleapi.Expand(req.URL, map[string]string{
  3085  		"environment": c.environment,
  3086  	})
  3087  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3088  }
  3089  
  3090  // Do executes the "composer.projects.locations.environments.fetchDatabaseProperties" call.
  3091  // Any non-2xx status code is an error. Response headers are in either
  3092  // *FetchDatabasePropertiesResponse.ServerResponse.Header or (if a response was
  3093  // returned at all) in error.(*googleapi.Error).Header. Use
  3094  // googleapi.IsNotModified to check whether the returned error was because
  3095  // http.StatusNotModified was returned.
  3096  func (c *ProjectsLocationsEnvironmentsFetchDatabasePropertiesCall) Do(opts ...googleapi.CallOption) (*FetchDatabasePropertiesResponse, error) {
  3097  	gensupport.SetOptions(c.urlParams_, opts...)
  3098  	res, err := c.doRequest("json")
  3099  	if res != nil && res.StatusCode == http.StatusNotModified {
  3100  		if res.Body != nil {
  3101  			res.Body.Close()
  3102  		}
  3103  		return nil, gensupport.WrapError(&googleapi.Error{
  3104  			Code:   res.StatusCode,
  3105  			Header: res.Header,
  3106  		})
  3107  	}
  3108  	if err != nil {
  3109  		return nil, err
  3110  	}
  3111  	defer googleapi.CloseBody(res)
  3112  	if err := googleapi.CheckResponse(res); err != nil {
  3113  		return nil, gensupport.WrapError(err)
  3114  	}
  3115  	ret := &FetchDatabasePropertiesResponse{
  3116  		ServerResponse: googleapi.ServerResponse{
  3117  			Header:         res.Header,
  3118  			HTTPStatusCode: res.StatusCode,
  3119  		},
  3120  	}
  3121  	target := &ret
  3122  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3123  		return nil, err
  3124  	}
  3125  	return ret, nil
  3126  }
  3127  
  3128  type ProjectsLocationsEnvironmentsGetCall struct {
  3129  	s            *Service
  3130  	name         string
  3131  	urlParams_   gensupport.URLParams
  3132  	ifNoneMatch_ string
  3133  	ctx_         context.Context
  3134  	header_      http.Header
  3135  }
  3136  
  3137  // Get: Get an existing environment.
  3138  //
  3139  //   - name: The resource name of the environment to get, in the form:
  3140  //     "projects/{projectId}/locations/{locationId}/environments/{environmentId}".
  3141  func (r *ProjectsLocationsEnvironmentsService) Get(name string) *ProjectsLocationsEnvironmentsGetCall {
  3142  	c := &ProjectsLocationsEnvironmentsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3143  	c.name = name
  3144  	return c
  3145  }
  3146  
  3147  // Fields allows partial responses to be retrieved. See
  3148  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3149  // details.
  3150  func (c *ProjectsLocationsEnvironmentsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsEnvironmentsGetCall {
  3151  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3152  	return c
  3153  }
  3154  
  3155  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  3156  // object's ETag matches the given value. This is useful for getting updates
  3157  // only after the object has changed since the last request.
  3158  func (c *ProjectsLocationsEnvironmentsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsEnvironmentsGetCall {
  3159  	c.ifNoneMatch_ = entityTag
  3160  	return c
  3161  }
  3162  
  3163  // Context sets the context to be used in this call's Do method.
  3164  func (c *ProjectsLocationsEnvironmentsGetCall) Context(ctx context.Context) *ProjectsLocationsEnvironmentsGetCall {
  3165  	c.ctx_ = ctx
  3166  	return c
  3167  }
  3168  
  3169  // Header returns a http.Header that can be modified by the caller to add
  3170  // headers to the request.
  3171  func (c *ProjectsLocationsEnvironmentsGetCall) Header() http.Header {
  3172  	if c.header_ == nil {
  3173  		c.header_ = make(http.Header)
  3174  	}
  3175  	return c.header_
  3176  }
  3177  
  3178  func (c *ProjectsLocationsEnvironmentsGetCall) doRequest(alt string) (*http.Response, error) {
  3179  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  3180  	if c.ifNoneMatch_ != "" {
  3181  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  3182  	}
  3183  	var body io.Reader = nil
  3184  	c.urlParams_.Set("alt", alt)
  3185  	c.urlParams_.Set("prettyPrint", "false")
  3186  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
  3187  	urls += "?" + c.urlParams_.Encode()
  3188  	req, err := http.NewRequest("GET", 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 "composer.projects.locations.environments.get" call.
  3200  // Any non-2xx status code is an error. Response headers are in either
  3201  // *Environment.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 *ProjectsLocationsEnvironmentsGetCall) Do(opts ...googleapi.CallOption) (*Environment, 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 := &Environment{
  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 ProjectsLocationsEnvironmentsListCall struct {
  3237  	s            *Service
  3238  	parent       string
  3239  	urlParams_   gensupport.URLParams
  3240  	ifNoneMatch_ string
  3241  	ctx_         context.Context
  3242  	header_      http.Header
  3243  }
  3244  
  3245  // List: List environments.
  3246  //
  3247  //   - parent: List environments in the given project and location, in the form:
  3248  //     "projects/{projectId}/locations/{locationId}".
  3249  func (r *ProjectsLocationsEnvironmentsService) List(parent string) *ProjectsLocationsEnvironmentsListCall {
  3250  	c := &ProjectsLocationsEnvironmentsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3251  	c.parent = parent
  3252  	return c
  3253  }
  3254  
  3255  // PageSize sets the optional parameter "pageSize": The maximum number of
  3256  // environments to return.
  3257  func (c *ProjectsLocationsEnvironmentsListCall) PageSize(pageSize int64) *ProjectsLocationsEnvironmentsListCall {
  3258  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  3259  	return c
  3260  }
  3261  
  3262  // PageToken sets the optional parameter "pageToken": The next_page_token value
  3263  // returned from a previous List request, if any.
  3264  func (c *ProjectsLocationsEnvironmentsListCall) PageToken(pageToken string) *ProjectsLocationsEnvironmentsListCall {
  3265  	c.urlParams_.Set("pageToken", pageToken)
  3266  	return c
  3267  }
  3268  
  3269  // Fields allows partial responses to be retrieved. See
  3270  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3271  // details.
  3272  func (c *ProjectsLocationsEnvironmentsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsEnvironmentsListCall {
  3273  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3274  	return c
  3275  }
  3276  
  3277  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  3278  // object's ETag matches the given value. This is useful for getting updates
  3279  // only after the object has changed since the last request.
  3280  func (c *ProjectsLocationsEnvironmentsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsEnvironmentsListCall {
  3281  	c.ifNoneMatch_ = entityTag
  3282  	return c
  3283  }
  3284  
  3285  // Context sets the context to be used in this call's Do method.
  3286  func (c *ProjectsLocationsEnvironmentsListCall) Context(ctx context.Context) *ProjectsLocationsEnvironmentsListCall {
  3287  	c.ctx_ = ctx
  3288  	return c
  3289  }
  3290  
  3291  // Header returns a http.Header that can be modified by the caller to add
  3292  // headers to the request.
  3293  func (c *ProjectsLocationsEnvironmentsListCall) Header() http.Header {
  3294  	if c.header_ == nil {
  3295  		c.header_ = make(http.Header)
  3296  	}
  3297  	return c.header_
  3298  }
  3299  
  3300  func (c *ProjectsLocationsEnvironmentsListCall) doRequest(alt string) (*http.Response, error) {
  3301  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  3302  	if c.ifNoneMatch_ != "" {
  3303  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  3304  	}
  3305  	var body io.Reader = nil
  3306  	c.urlParams_.Set("alt", alt)
  3307  	c.urlParams_.Set("prettyPrint", "false")
  3308  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/environments")
  3309  	urls += "?" + c.urlParams_.Encode()
  3310  	req, err := http.NewRequest("GET", urls, body)
  3311  	if err != nil {
  3312  		return nil, err
  3313  	}
  3314  	req.Header = reqHeaders
  3315  	googleapi.Expand(req.URL, map[string]string{
  3316  		"parent": c.parent,
  3317  	})
  3318  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3319  }
  3320  
  3321  // Do executes the "composer.projects.locations.environments.list" call.
  3322  // Any non-2xx status code is an error. Response headers are in either
  3323  // *ListEnvironmentsResponse.ServerResponse.Header or (if a response was
  3324  // returned at all) in error.(*googleapi.Error).Header. Use
  3325  // googleapi.IsNotModified to check whether the returned error was because
  3326  // http.StatusNotModified was returned.
  3327  func (c *ProjectsLocationsEnvironmentsListCall) Do(opts ...googleapi.CallOption) (*ListEnvironmentsResponse, error) {
  3328  	gensupport.SetOptions(c.urlParams_, opts...)
  3329  	res, err := c.doRequest("json")
  3330  	if res != nil && res.StatusCode == http.StatusNotModified {
  3331  		if res.Body != nil {
  3332  			res.Body.Close()
  3333  		}
  3334  		return nil, gensupport.WrapError(&googleapi.Error{
  3335  			Code:   res.StatusCode,
  3336  			Header: res.Header,
  3337  		})
  3338  	}
  3339  	if err != nil {
  3340  		return nil, err
  3341  	}
  3342  	defer googleapi.CloseBody(res)
  3343  	if err := googleapi.CheckResponse(res); err != nil {
  3344  		return nil, gensupport.WrapError(err)
  3345  	}
  3346  	ret := &ListEnvironmentsResponse{
  3347  		ServerResponse: googleapi.ServerResponse{
  3348  			Header:         res.Header,
  3349  			HTTPStatusCode: res.StatusCode,
  3350  		},
  3351  	}
  3352  	target := &ret
  3353  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3354  		return nil, err
  3355  	}
  3356  	return ret, nil
  3357  }
  3358  
  3359  // Pages invokes f for each page of results.
  3360  // A non-nil error returned from f will halt the iteration.
  3361  // The provided context supersedes any context provided to the Context method.
  3362  func (c *ProjectsLocationsEnvironmentsListCall) Pages(ctx context.Context, f func(*ListEnvironmentsResponse) error) error {
  3363  	c.ctx_ = ctx
  3364  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  3365  	for {
  3366  		x, err := c.Do()
  3367  		if err != nil {
  3368  			return err
  3369  		}
  3370  		if err := f(x); err != nil {
  3371  			return err
  3372  		}
  3373  		if x.NextPageToken == "" {
  3374  			return nil
  3375  		}
  3376  		c.PageToken(x.NextPageToken)
  3377  	}
  3378  }
  3379  
  3380  type ProjectsLocationsEnvironmentsLoadSnapshotCall struct {
  3381  	s                   *Service
  3382  	environment         string
  3383  	loadsnapshotrequest *LoadSnapshotRequest
  3384  	urlParams_          gensupport.URLParams
  3385  	ctx_                context.Context
  3386  	header_             http.Header
  3387  }
  3388  
  3389  // LoadSnapshot: Loads a snapshot of a Cloud Composer environment. As a result
  3390  // of this operation, a snapshot of environment's specified in
  3391  // LoadSnapshotRequest is loaded into the environment.
  3392  //
  3393  //   - environment: The resource name of the target environment in the form:
  3394  //     "projects/{projectId}/locations/{locationId}/environments/{environmentId}".
  3395  func (r *ProjectsLocationsEnvironmentsService) LoadSnapshot(environment string, loadsnapshotrequest *LoadSnapshotRequest) *ProjectsLocationsEnvironmentsLoadSnapshotCall {
  3396  	c := &ProjectsLocationsEnvironmentsLoadSnapshotCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3397  	c.environment = environment
  3398  	c.loadsnapshotrequest = loadsnapshotrequest
  3399  	return c
  3400  }
  3401  
  3402  // Fields allows partial responses to be retrieved. See
  3403  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3404  // details.
  3405  func (c *ProjectsLocationsEnvironmentsLoadSnapshotCall) Fields(s ...googleapi.Field) *ProjectsLocationsEnvironmentsLoadSnapshotCall {
  3406  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3407  	return c
  3408  }
  3409  
  3410  // Context sets the context to be used in this call's Do method.
  3411  func (c *ProjectsLocationsEnvironmentsLoadSnapshotCall) Context(ctx context.Context) *ProjectsLocationsEnvironmentsLoadSnapshotCall {
  3412  	c.ctx_ = ctx
  3413  	return c
  3414  }
  3415  
  3416  // Header returns a http.Header that can be modified by the caller to add
  3417  // headers to the request.
  3418  func (c *ProjectsLocationsEnvironmentsLoadSnapshotCall) Header() http.Header {
  3419  	if c.header_ == nil {
  3420  		c.header_ = make(http.Header)
  3421  	}
  3422  	return c.header_
  3423  }
  3424  
  3425  func (c *ProjectsLocationsEnvironmentsLoadSnapshotCall) doRequest(alt string) (*http.Response, error) {
  3426  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  3427  	var body io.Reader = nil
  3428  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.loadsnapshotrequest)
  3429  	if err != nil {
  3430  		return nil, err
  3431  	}
  3432  	c.urlParams_.Set("alt", alt)
  3433  	c.urlParams_.Set("prettyPrint", "false")
  3434  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+environment}:loadSnapshot")
  3435  	urls += "?" + c.urlParams_.Encode()
  3436  	req, err := http.NewRequest("POST", urls, body)
  3437  	if err != nil {
  3438  		return nil, err
  3439  	}
  3440  	req.Header = reqHeaders
  3441  	googleapi.Expand(req.URL, map[string]string{
  3442  		"environment": c.environment,
  3443  	})
  3444  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3445  }
  3446  
  3447  // Do executes the "composer.projects.locations.environments.loadSnapshot" call.
  3448  // Any non-2xx status code is an error. Response headers are in either
  3449  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  3450  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  3451  // whether the returned error was because http.StatusNotModified was returned.
  3452  func (c *ProjectsLocationsEnvironmentsLoadSnapshotCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  3453  	gensupport.SetOptions(c.urlParams_, opts...)
  3454  	res, err := c.doRequest("json")
  3455  	if res != nil && res.StatusCode == http.StatusNotModified {
  3456  		if res.Body != nil {
  3457  			res.Body.Close()
  3458  		}
  3459  		return nil, gensupport.WrapError(&googleapi.Error{
  3460  			Code:   res.StatusCode,
  3461  			Header: res.Header,
  3462  		})
  3463  	}
  3464  	if err != nil {
  3465  		return nil, err
  3466  	}
  3467  	defer googleapi.CloseBody(res)
  3468  	if err := googleapi.CheckResponse(res); err != nil {
  3469  		return nil, gensupport.WrapError(err)
  3470  	}
  3471  	ret := &Operation{
  3472  		ServerResponse: googleapi.ServerResponse{
  3473  			Header:         res.Header,
  3474  			HTTPStatusCode: res.StatusCode,
  3475  		},
  3476  	}
  3477  	target := &ret
  3478  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3479  		return nil, err
  3480  	}
  3481  	return ret, nil
  3482  }
  3483  
  3484  type ProjectsLocationsEnvironmentsPatchCall struct {
  3485  	s           *Service
  3486  	name        string
  3487  	environment *Environment
  3488  	urlParams_  gensupport.URLParams
  3489  	ctx_        context.Context
  3490  	header_     http.Header
  3491  }
  3492  
  3493  // Patch: Update an environment.
  3494  //
  3495  //   - name: The relative resource name of the environment to update, in the
  3496  //     form:
  3497  //     "projects/{projectId}/locations/{locationId}/environments/{environmentId}".
  3498  func (r *ProjectsLocationsEnvironmentsService) Patch(name string, environment *Environment) *ProjectsLocationsEnvironmentsPatchCall {
  3499  	c := &ProjectsLocationsEnvironmentsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3500  	c.name = name
  3501  	c.environment = environment
  3502  	return c
  3503  }
  3504  
  3505  // UpdateMask sets the optional parameter "updateMask": Required. A
  3506  // comma-separated list of paths, relative to `Environment`, of fields to
  3507  // update. For example, to set the version of scikit-learn to install in the
  3508  // environment to 0.19.0 and to remove an existing installation of argparse,
  3509  // the `updateMask` parameter would include the following two `paths` values:
  3510  // "config.softwareConfig.pypiPackages.scikit-learn" and
  3511  // "config.softwareConfig.pypiPackages.argparse". The included patch
  3512  // environment would specify the scikit-learn version as follows: { "config":{
  3513  // "softwareConfig":{ "pypiPackages":{ "scikit-learn":"==0.19.0" } } } } Note
  3514  // that in the above example, any existing PyPI packages other than
  3515  // scikit-learn and argparse will be unaffected. Only one update type may be
  3516  // included in a single request's `updateMask`. For example, one cannot update
  3517  // both the PyPI packages and labels in the same request. However, it is
  3518  // possible to update multiple members of a map field simultaneously in the
  3519  // same request. For example, to set the labels "label1" and "label2" while
  3520  // clearing "label3" (assuming it already exists), one can provide the paths
  3521  // "labels.label1", "labels.label2", and "labels.label3" and populate the patch
  3522  // environment as follows: { "labels":{ "label1":"new-label1-value"
  3523  // "label2":"new-label2-value" } } Note that in the above example, any existing
  3524  // labels that are not included in the `updateMask` will be unaffected. It is
  3525  // also possible to replace an entire map field by providing the map field's
  3526  // path in the `updateMask`. The new value of the field will be that which is
  3527  // provided in the patch environment. For example, to delete all pre-existing
  3528  // user-specified PyPI packages and install botocore at version 1.7.14, the
  3529  // `updateMask` would contain the path "config.softwareConfig.pypiPackages",
  3530  // and the patch environment would be the following: { "config":{
  3531  // "softwareConfig":{ "pypiPackages":{ "botocore":"==1.7.14" } } } } **Note:**
  3532  // Only the following fields can be updated: *
  3533  // `config.softwareConfig.pypiPackages` * Replace all custom custom PyPI
  3534  // packages. If a replacement package map is not included in `environment`, all
  3535  // custom PyPI packages are cleared. It is an error to provide both this mask
  3536  // and a mask specifying an individual package. *
  3537  // `config.softwareConfig.pypiPackages.`packagename * Update the custom PyPI
  3538  // package *packagename*, preserving other packages. To delete the package,
  3539  // include it in `updateMask`, and omit the mapping for it in
  3540  // `environment.config.softwareConfig.pypiPackages`. It is an error to provide
  3541  // both a mask of this form and the `config.softwareConfig.pypiPackages` mask.
  3542  // * `labels` * Replace all environment labels. If a replacement labels map is
  3543  // not included in `environment`, all labels are cleared. It is an error to
  3544  // provide both this mask and a mask specifying one or more individual labels.
  3545  // * `labels.`labelName * Set the label named *labelName*, while preserving
  3546  // other labels. To delete the label, include it in `updateMask` and omit its
  3547  // mapping in `environment.labels`. It is an error to provide both a mask of
  3548  // this form and the `labels` mask. * `config.nodeCount` * Horizontally scale
  3549  // the number of nodes in the environment. An integer greater than or equal to
  3550  // 3 must be provided in the `config.nodeCount` field. Supported for Cloud
  3551  // Composer environments in versions composer-1.*.*-airflow-*.*.*. *
  3552  // `config.webServerNetworkAccessControl` * Replace the environment's current
  3553  // WebServerNetworkAccessControl. *
  3554  // `config.softwareConfig.airflowConfigOverrides` * Replace all Apache Airflow
  3555  // config overrides. If a replacement config overrides map is not included in
  3556  // `environment`, all config overrides are cleared. It is an error to provide
  3557  // both this mask and a mask specifying one or more individual config
  3558  // overrides. * `config.softwareConfig.airflowConfigOverrides.`section-name *
  3559  // Override the Apache Airflow config property *name* in the section named
  3560  // *section*, preserving other properties. To delete the property override,
  3561  // include it in `updateMask` and omit its mapping in
  3562  // `environment.config.softwareConfig.airflowConfigOverrides`. It is an error
  3563  // to provide both a mask of this form and the
  3564  // `config.softwareConfig.airflowConfigOverrides` mask. *
  3565  // `config.softwareConfig.envVariables` * Replace all environment variables. If
  3566  // a replacement environment variable map is not included in `environment`, all
  3567  // custom environment variables are cleared. *
  3568  // `config.softwareConfig.imageVersion` * Upgrade the version of the
  3569  // environment in-place. Refer to `SoftwareConfig.image_version` for
  3570  // information on how to format the new image version. Additionally, the new
  3571  // image version cannot effect a version downgrade, and must match the current
  3572  // image version's Composer and Airflow major versions. Consult the Cloud
  3573  // Composer version list (/composer/docs/concepts/versioning/composer-versions)
  3574  // for valid values. * `config.softwareConfig.schedulerCount` * Horizontally
  3575  // scale the number of schedulers in Airflow. A positive integer not greater
  3576  // than the number of nodes must be provided in the
  3577  // `config.softwareConfig.schedulerCount` field. Supported for Cloud Composer
  3578  // environments in versions composer-1.*.*-airflow-2.*.*. *
  3579  // `config.softwareConfig.cloudDataLineageIntegration` * Configuration for
  3580  // Cloud Data Lineage integration. * `config.databaseConfig.machineType` *
  3581  // Cloud SQL machine type used by Airflow database. It has to be one of:
  3582  // db-n1-standard-2, db-n1-standard-4, db-n1-standard-8 or db-n1-standard-16.
  3583  // Supported for Cloud Composer environments in versions
  3584  // composer-1.*.*-airflow-*.*.*. * `config.webServerConfig.machineType` *
  3585  // Machine type on which Airflow web server is running. It has to be one of:
  3586  // composer-n1-webserver-2, composer-n1-webserver-4 or composer-n1-webserver-8.
  3587  // Supported for Cloud Composer environments in versions
  3588  // composer-1.*.*-airflow-*.*.*. * `config.maintenanceWindow` * Maintenance
  3589  // window during which Cloud Composer components may be under maintenance. *
  3590  // `config.workloadsConfig` * The workloads configuration settings for the GKE
  3591  // cluster associated with the Cloud Composer environment. Supported for Cloud
  3592  // Composer environments in versions composer-2.*.*-airflow-*.*.* and newer. *
  3593  // `config.environmentSize` * The size of the Cloud Composer environment.
  3594  // Supported for Cloud Composer environments in versions
  3595  // composer-2.*.*-airflow-*.*.* and newer.
  3596  func (c *ProjectsLocationsEnvironmentsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsEnvironmentsPatchCall {
  3597  	c.urlParams_.Set("updateMask", updateMask)
  3598  	return c
  3599  }
  3600  
  3601  // Fields allows partial responses to be retrieved. See
  3602  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3603  // details.
  3604  func (c *ProjectsLocationsEnvironmentsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsEnvironmentsPatchCall {
  3605  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3606  	return c
  3607  }
  3608  
  3609  // Context sets the context to be used in this call's Do method.
  3610  func (c *ProjectsLocationsEnvironmentsPatchCall) Context(ctx context.Context) *ProjectsLocationsEnvironmentsPatchCall {
  3611  	c.ctx_ = ctx
  3612  	return c
  3613  }
  3614  
  3615  // Header returns a http.Header that can be modified by the caller to add
  3616  // headers to the request.
  3617  func (c *ProjectsLocationsEnvironmentsPatchCall) Header() http.Header {
  3618  	if c.header_ == nil {
  3619  		c.header_ = make(http.Header)
  3620  	}
  3621  	return c.header_
  3622  }
  3623  
  3624  func (c *ProjectsLocationsEnvironmentsPatchCall) doRequest(alt string) (*http.Response, error) {
  3625  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  3626  	var body io.Reader = nil
  3627  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.environment)
  3628  	if err != nil {
  3629  		return nil, err
  3630  	}
  3631  	c.urlParams_.Set("alt", alt)
  3632  	c.urlParams_.Set("prettyPrint", "false")
  3633  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
  3634  	urls += "?" + c.urlParams_.Encode()
  3635  	req, err := http.NewRequest("PATCH", urls, body)
  3636  	if err != nil {
  3637  		return nil, err
  3638  	}
  3639  	req.Header = reqHeaders
  3640  	googleapi.Expand(req.URL, map[string]string{
  3641  		"name": c.name,
  3642  	})
  3643  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3644  }
  3645  
  3646  // Do executes the "composer.projects.locations.environments.patch" call.
  3647  // Any non-2xx status code is an error. Response headers are in either
  3648  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  3649  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  3650  // whether the returned error was because http.StatusNotModified was returned.
  3651  func (c *ProjectsLocationsEnvironmentsPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  3652  	gensupport.SetOptions(c.urlParams_, opts...)
  3653  	res, err := c.doRequest("json")
  3654  	if res != nil && res.StatusCode == http.StatusNotModified {
  3655  		if res.Body != nil {
  3656  			res.Body.Close()
  3657  		}
  3658  		return nil, gensupport.WrapError(&googleapi.Error{
  3659  			Code:   res.StatusCode,
  3660  			Header: res.Header,
  3661  		})
  3662  	}
  3663  	if err != nil {
  3664  		return nil, err
  3665  	}
  3666  	defer googleapi.CloseBody(res)
  3667  	if err := googleapi.CheckResponse(res); err != nil {
  3668  		return nil, gensupport.WrapError(err)
  3669  	}
  3670  	ret := &Operation{
  3671  		ServerResponse: googleapi.ServerResponse{
  3672  			Header:         res.Header,
  3673  			HTTPStatusCode: res.StatusCode,
  3674  		},
  3675  	}
  3676  	target := &ret
  3677  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3678  		return nil, err
  3679  	}
  3680  	return ret, nil
  3681  }
  3682  
  3683  type ProjectsLocationsEnvironmentsPollAirflowCommandCall struct {
  3684  	s                         *Service
  3685  	environment               string
  3686  	pollairflowcommandrequest *PollAirflowCommandRequest
  3687  	urlParams_                gensupport.URLParams
  3688  	ctx_                      context.Context
  3689  	header_                   http.Header
  3690  }
  3691  
  3692  // PollAirflowCommand: Polls Airflow CLI command execution and fetches logs.
  3693  //
  3694  //   - environment: The resource name of the environment in the form:
  3695  //     "projects/{projectId}/locations/{locationId}/environments/{environmentId}".
  3696  func (r *ProjectsLocationsEnvironmentsService) PollAirflowCommand(environment string, pollairflowcommandrequest *PollAirflowCommandRequest) *ProjectsLocationsEnvironmentsPollAirflowCommandCall {
  3697  	c := &ProjectsLocationsEnvironmentsPollAirflowCommandCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3698  	c.environment = environment
  3699  	c.pollairflowcommandrequest = pollairflowcommandrequest
  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 *ProjectsLocationsEnvironmentsPollAirflowCommandCall) Fields(s ...googleapi.Field) *ProjectsLocationsEnvironmentsPollAirflowCommandCall {
  3707  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3708  	return c
  3709  }
  3710  
  3711  // Context sets the context to be used in this call's Do method.
  3712  func (c *ProjectsLocationsEnvironmentsPollAirflowCommandCall) Context(ctx context.Context) *ProjectsLocationsEnvironmentsPollAirflowCommandCall {
  3713  	c.ctx_ = ctx
  3714  	return c
  3715  }
  3716  
  3717  // Header returns a http.Header that can be modified by the caller to add
  3718  // headers to the request.
  3719  func (c *ProjectsLocationsEnvironmentsPollAirflowCommandCall) Header() http.Header {
  3720  	if c.header_ == nil {
  3721  		c.header_ = make(http.Header)
  3722  	}
  3723  	return c.header_
  3724  }
  3725  
  3726  func (c *ProjectsLocationsEnvironmentsPollAirflowCommandCall) doRequest(alt string) (*http.Response, error) {
  3727  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  3728  	var body io.Reader = nil
  3729  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.pollairflowcommandrequest)
  3730  	if err != nil {
  3731  		return nil, err
  3732  	}
  3733  	c.urlParams_.Set("alt", alt)
  3734  	c.urlParams_.Set("prettyPrint", "false")
  3735  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+environment}:pollAirflowCommand")
  3736  	urls += "?" + c.urlParams_.Encode()
  3737  	req, err := http.NewRequest("POST", urls, body)
  3738  	if err != nil {
  3739  		return nil, err
  3740  	}
  3741  	req.Header = reqHeaders
  3742  	googleapi.Expand(req.URL, map[string]string{
  3743  		"environment": c.environment,
  3744  	})
  3745  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3746  }
  3747  
  3748  // Do executes the "composer.projects.locations.environments.pollAirflowCommand" call.
  3749  // Any non-2xx status code is an error. Response headers are in either
  3750  // *PollAirflowCommandResponse.ServerResponse.Header or (if a response was
  3751  // returned at all) in error.(*googleapi.Error).Header. Use
  3752  // googleapi.IsNotModified to check whether the returned error was because
  3753  // http.StatusNotModified was returned.
  3754  func (c *ProjectsLocationsEnvironmentsPollAirflowCommandCall) Do(opts ...googleapi.CallOption) (*PollAirflowCommandResponse, error) {
  3755  	gensupport.SetOptions(c.urlParams_, opts...)
  3756  	res, err := c.doRequest("json")
  3757  	if res != nil && res.StatusCode == http.StatusNotModified {
  3758  		if res.Body != nil {
  3759  			res.Body.Close()
  3760  		}
  3761  		return nil, gensupport.WrapError(&googleapi.Error{
  3762  			Code:   res.StatusCode,
  3763  			Header: res.Header,
  3764  		})
  3765  	}
  3766  	if err != nil {
  3767  		return nil, err
  3768  	}
  3769  	defer googleapi.CloseBody(res)
  3770  	if err := googleapi.CheckResponse(res); err != nil {
  3771  		return nil, gensupport.WrapError(err)
  3772  	}
  3773  	ret := &PollAirflowCommandResponse{
  3774  		ServerResponse: googleapi.ServerResponse{
  3775  			Header:         res.Header,
  3776  			HTTPStatusCode: res.StatusCode,
  3777  		},
  3778  	}
  3779  	target := &ret
  3780  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3781  		return nil, err
  3782  	}
  3783  	return ret, nil
  3784  }
  3785  
  3786  type ProjectsLocationsEnvironmentsRestartWebServerCall struct {
  3787  	s                       *Service
  3788  	name                    string
  3789  	restartwebserverrequest *RestartWebServerRequest
  3790  	urlParams_              gensupport.URLParams
  3791  	ctx_                    context.Context
  3792  	header_                 http.Header
  3793  }
  3794  
  3795  // RestartWebServer: Restart Airflow web server.
  3796  //
  3797  //   - name: The resource name of the environment to restart the web server for,
  3798  //     in the form:
  3799  //     "projects/{projectId}/locations/{locationId}/environments/{environmentId}".
  3800  func (r *ProjectsLocationsEnvironmentsService) RestartWebServer(name string, restartwebserverrequest *RestartWebServerRequest) *ProjectsLocationsEnvironmentsRestartWebServerCall {
  3801  	c := &ProjectsLocationsEnvironmentsRestartWebServerCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3802  	c.name = name
  3803  	c.restartwebserverrequest = restartwebserverrequest
  3804  	return c
  3805  }
  3806  
  3807  // Fields allows partial responses to be retrieved. See
  3808  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3809  // details.
  3810  func (c *ProjectsLocationsEnvironmentsRestartWebServerCall) Fields(s ...googleapi.Field) *ProjectsLocationsEnvironmentsRestartWebServerCall {
  3811  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3812  	return c
  3813  }
  3814  
  3815  // Context sets the context to be used in this call's Do method.
  3816  func (c *ProjectsLocationsEnvironmentsRestartWebServerCall) Context(ctx context.Context) *ProjectsLocationsEnvironmentsRestartWebServerCall {
  3817  	c.ctx_ = ctx
  3818  	return c
  3819  }
  3820  
  3821  // Header returns a http.Header that can be modified by the caller to add
  3822  // headers to the request.
  3823  func (c *ProjectsLocationsEnvironmentsRestartWebServerCall) Header() http.Header {
  3824  	if c.header_ == nil {
  3825  		c.header_ = make(http.Header)
  3826  	}
  3827  	return c.header_
  3828  }
  3829  
  3830  func (c *ProjectsLocationsEnvironmentsRestartWebServerCall) doRequest(alt string) (*http.Response, error) {
  3831  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  3832  	var body io.Reader = nil
  3833  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.restartwebserverrequest)
  3834  	if err != nil {
  3835  		return nil, err
  3836  	}
  3837  	c.urlParams_.Set("alt", alt)
  3838  	c.urlParams_.Set("prettyPrint", "false")
  3839  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}:restartWebServer")
  3840  	urls += "?" + c.urlParams_.Encode()
  3841  	req, err := http.NewRequest("POST", urls, body)
  3842  	if err != nil {
  3843  		return nil, err
  3844  	}
  3845  	req.Header = reqHeaders
  3846  	googleapi.Expand(req.URL, map[string]string{
  3847  		"name": c.name,
  3848  	})
  3849  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3850  }
  3851  
  3852  // Do executes the "composer.projects.locations.environments.restartWebServer" call.
  3853  // Any non-2xx status code is an error. Response headers are in either
  3854  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  3855  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  3856  // whether the returned error was because http.StatusNotModified was returned.
  3857  func (c *ProjectsLocationsEnvironmentsRestartWebServerCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  3858  	gensupport.SetOptions(c.urlParams_, opts...)
  3859  	res, err := c.doRequest("json")
  3860  	if res != nil && res.StatusCode == http.StatusNotModified {
  3861  		if res.Body != nil {
  3862  			res.Body.Close()
  3863  		}
  3864  		return nil, gensupport.WrapError(&googleapi.Error{
  3865  			Code:   res.StatusCode,
  3866  			Header: res.Header,
  3867  		})
  3868  	}
  3869  	if err != nil {
  3870  		return nil, err
  3871  	}
  3872  	defer googleapi.CloseBody(res)
  3873  	if err := googleapi.CheckResponse(res); err != nil {
  3874  		return nil, gensupport.WrapError(err)
  3875  	}
  3876  	ret := &Operation{
  3877  		ServerResponse: googleapi.ServerResponse{
  3878  			Header:         res.Header,
  3879  			HTTPStatusCode: res.StatusCode,
  3880  		},
  3881  	}
  3882  	target := &ret
  3883  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3884  		return nil, err
  3885  	}
  3886  	return ret, nil
  3887  }
  3888  
  3889  type ProjectsLocationsEnvironmentsSaveSnapshotCall struct {
  3890  	s                   *Service
  3891  	environment         string
  3892  	savesnapshotrequest *SaveSnapshotRequest
  3893  	urlParams_          gensupport.URLParams
  3894  	ctx_                context.Context
  3895  	header_             http.Header
  3896  }
  3897  
  3898  // SaveSnapshot: Creates a snapshots of a Cloud Composer environment. As a
  3899  // result of this operation, snapshot of environment's state is stored in a
  3900  // location specified in the SaveSnapshotRequest.
  3901  //
  3902  //   - environment: The resource name of the source environment in the form:
  3903  //     "projects/{projectId}/locations/{locationId}/environments/{environmentId}".
  3904  func (r *ProjectsLocationsEnvironmentsService) SaveSnapshot(environment string, savesnapshotrequest *SaveSnapshotRequest) *ProjectsLocationsEnvironmentsSaveSnapshotCall {
  3905  	c := &ProjectsLocationsEnvironmentsSaveSnapshotCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3906  	c.environment = environment
  3907  	c.savesnapshotrequest = savesnapshotrequest
  3908  	return c
  3909  }
  3910  
  3911  // Fields allows partial responses to be retrieved. See
  3912  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3913  // details.
  3914  func (c *ProjectsLocationsEnvironmentsSaveSnapshotCall) Fields(s ...googleapi.Field) *ProjectsLocationsEnvironmentsSaveSnapshotCall {
  3915  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3916  	return c
  3917  }
  3918  
  3919  // Context sets the context to be used in this call's Do method.
  3920  func (c *ProjectsLocationsEnvironmentsSaveSnapshotCall) Context(ctx context.Context) *ProjectsLocationsEnvironmentsSaveSnapshotCall {
  3921  	c.ctx_ = ctx
  3922  	return c
  3923  }
  3924  
  3925  // Header returns a http.Header that can be modified by the caller to add
  3926  // headers to the request.
  3927  func (c *ProjectsLocationsEnvironmentsSaveSnapshotCall) Header() http.Header {
  3928  	if c.header_ == nil {
  3929  		c.header_ = make(http.Header)
  3930  	}
  3931  	return c.header_
  3932  }
  3933  
  3934  func (c *ProjectsLocationsEnvironmentsSaveSnapshotCall) doRequest(alt string) (*http.Response, error) {
  3935  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  3936  	var body io.Reader = nil
  3937  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.savesnapshotrequest)
  3938  	if err != nil {
  3939  		return nil, err
  3940  	}
  3941  	c.urlParams_.Set("alt", alt)
  3942  	c.urlParams_.Set("prettyPrint", "false")
  3943  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+environment}:saveSnapshot")
  3944  	urls += "?" + c.urlParams_.Encode()
  3945  	req, err := http.NewRequest("POST", urls, body)
  3946  	if err != nil {
  3947  		return nil, err
  3948  	}
  3949  	req.Header = reqHeaders
  3950  	googleapi.Expand(req.URL, map[string]string{
  3951  		"environment": c.environment,
  3952  	})
  3953  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3954  }
  3955  
  3956  // Do executes the "composer.projects.locations.environments.saveSnapshot" call.
  3957  // Any non-2xx status code is an error. Response headers are in either
  3958  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  3959  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  3960  // whether the returned error was because http.StatusNotModified was returned.
  3961  func (c *ProjectsLocationsEnvironmentsSaveSnapshotCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  3962  	gensupport.SetOptions(c.urlParams_, opts...)
  3963  	res, err := c.doRequest("json")
  3964  	if res != nil && res.StatusCode == http.StatusNotModified {
  3965  		if res.Body != nil {
  3966  			res.Body.Close()
  3967  		}
  3968  		return nil, gensupport.WrapError(&googleapi.Error{
  3969  			Code:   res.StatusCode,
  3970  			Header: res.Header,
  3971  		})
  3972  	}
  3973  	if err != nil {
  3974  		return nil, err
  3975  	}
  3976  	defer googleapi.CloseBody(res)
  3977  	if err := googleapi.CheckResponse(res); err != nil {
  3978  		return nil, gensupport.WrapError(err)
  3979  	}
  3980  	ret := &Operation{
  3981  		ServerResponse: googleapi.ServerResponse{
  3982  			Header:         res.Header,
  3983  			HTTPStatusCode: res.StatusCode,
  3984  		},
  3985  	}
  3986  	target := &ret
  3987  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3988  		return nil, err
  3989  	}
  3990  	return ret, nil
  3991  }
  3992  
  3993  type ProjectsLocationsEnvironmentsStopAirflowCommandCall struct {
  3994  	s                         *Service
  3995  	environment               string
  3996  	stopairflowcommandrequest *StopAirflowCommandRequest
  3997  	urlParams_                gensupport.URLParams
  3998  	ctx_                      context.Context
  3999  	header_                   http.Header
  4000  }
  4001  
  4002  // StopAirflowCommand: Stops Airflow CLI command execution.
  4003  //
  4004  //   - environment: The resource name of the environment in the form:
  4005  //     "projects/{projectId}/locations/{locationId}/environments/{environmentId}".
  4006  func (r *ProjectsLocationsEnvironmentsService) StopAirflowCommand(environment string, stopairflowcommandrequest *StopAirflowCommandRequest) *ProjectsLocationsEnvironmentsStopAirflowCommandCall {
  4007  	c := &ProjectsLocationsEnvironmentsStopAirflowCommandCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4008  	c.environment = environment
  4009  	c.stopairflowcommandrequest = stopairflowcommandrequest
  4010  	return c
  4011  }
  4012  
  4013  // Fields allows partial responses to be retrieved. See
  4014  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4015  // details.
  4016  func (c *ProjectsLocationsEnvironmentsStopAirflowCommandCall) Fields(s ...googleapi.Field) *ProjectsLocationsEnvironmentsStopAirflowCommandCall {
  4017  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4018  	return c
  4019  }
  4020  
  4021  // Context sets the context to be used in this call's Do method.
  4022  func (c *ProjectsLocationsEnvironmentsStopAirflowCommandCall) Context(ctx context.Context) *ProjectsLocationsEnvironmentsStopAirflowCommandCall {
  4023  	c.ctx_ = ctx
  4024  	return c
  4025  }
  4026  
  4027  // Header returns a http.Header that can be modified by the caller to add
  4028  // headers to the request.
  4029  func (c *ProjectsLocationsEnvironmentsStopAirflowCommandCall) Header() http.Header {
  4030  	if c.header_ == nil {
  4031  		c.header_ = make(http.Header)
  4032  	}
  4033  	return c.header_
  4034  }
  4035  
  4036  func (c *ProjectsLocationsEnvironmentsStopAirflowCommandCall) doRequest(alt string) (*http.Response, error) {
  4037  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  4038  	var body io.Reader = nil
  4039  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.stopairflowcommandrequest)
  4040  	if err != nil {
  4041  		return nil, err
  4042  	}
  4043  	c.urlParams_.Set("alt", alt)
  4044  	c.urlParams_.Set("prettyPrint", "false")
  4045  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+environment}:stopAirflowCommand")
  4046  	urls += "?" + c.urlParams_.Encode()
  4047  	req, err := http.NewRequest("POST", urls, body)
  4048  	if err != nil {
  4049  		return nil, err
  4050  	}
  4051  	req.Header = reqHeaders
  4052  	googleapi.Expand(req.URL, map[string]string{
  4053  		"environment": c.environment,
  4054  	})
  4055  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4056  }
  4057  
  4058  // Do executes the "composer.projects.locations.environments.stopAirflowCommand" call.
  4059  // Any non-2xx status code is an error. Response headers are in either
  4060  // *StopAirflowCommandResponse.ServerResponse.Header or (if a response was
  4061  // returned at all) in error.(*googleapi.Error).Header. Use
  4062  // googleapi.IsNotModified to check whether the returned error was because
  4063  // http.StatusNotModified was returned.
  4064  func (c *ProjectsLocationsEnvironmentsStopAirflowCommandCall) Do(opts ...googleapi.CallOption) (*StopAirflowCommandResponse, error) {
  4065  	gensupport.SetOptions(c.urlParams_, opts...)
  4066  	res, err := c.doRequest("json")
  4067  	if res != nil && res.StatusCode == http.StatusNotModified {
  4068  		if res.Body != nil {
  4069  			res.Body.Close()
  4070  		}
  4071  		return nil, gensupport.WrapError(&googleapi.Error{
  4072  			Code:   res.StatusCode,
  4073  			Header: res.Header,
  4074  		})
  4075  	}
  4076  	if err != nil {
  4077  		return nil, err
  4078  	}
  4079  	defer googleapi.CloseBody(res)
  4080  	if err := googleapi.CheckResponse(res); err != nil {
  4081  		return nil, gensupport.WrapError(err)
  4082  	}
  4083  	ret := &StopAirflowCommandResponse{
  4084  		ServerResponse: googleapi.ServerResponse{
  4085  			Header:         res.Header,
  4086  			HTTPStatusCode: res.StatusCode,
  4087  		},
  4088  	}
  4089  	target := &ret
  4090  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4091  		return nil, err
  4092  	}
  4093  	return ret, nil
  4094  }
  4095  
  4096  type ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsCreateCall struct {
  4097  	s                      *Service
  4098  	parent                 string
  4099  	userworkloadsconfigmap *UserWorkloadsConfigMap
  4100  	urlParams_             gensupport.URLParams
  4101  	ctx_                   context.Context
  4102  	header_                http.Header
  4103  }
  4104  
  4105  // Create: Creates a user workloads ConfigMap. This method is supported for
  4106  // Cloud Composer environments in versions composer-3.*.*-airflow-*.*.* and
  4107  // newer.
  4108  //
  4109  //   - parent: The environment name to create a ConfigMap for, in the form:
  4110  //     "projects/{projectId}/locations/{locationId}/environments/{environmentId}".
  4111  func (r *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsService) Create(parent string, userworkloadsconfigmap *UserWorkloadsConfigMap) *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsCreateCall {
  4112  	c := &ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4113  	c.parent = parent
  4114  	c.userworkloadsconfigmap = userworkloadsconfigmap
  4115  	return c
  4116  }
  4117  
  4118  // Fields allows partial responses to be retrieved. See
  4119  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4120  // details.
  4121  func (c *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsCreateCall {
  4122  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4123  	return c
  4124  }
  4125  
  4126  // Context sets the context to be used in this call's Do method.
  4127  func (c *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsCreateCall) Context(ctx context.Context) *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsCreateCall {
  4128  	c.ctx_ = ctx
  4129  	return c
  4130  }
  4131  
  4132  // Header returns a http.Header that can be modified by the caller to add
  4133  // headers to the request.
  4134  func (c *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsCreateCall) Header() http.Header {
  4135  	if c.header_ == nil {
  4136  		c.header_ = make(http.Header)
  4137  	}
  4138  	return c.header_
  4139  }
  4140  
  4141  func (c *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsCreateCall) doRequest(alt string) (*http.Response, error) {
  4142  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  4143  	var body io.Reader = nil
  4144  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.userworkloadsconfigmap)
  4145  	if err != nil {
  4146  		return nil, err
  4147  	}
  4148  	c.urlParams_.Set("alt", alt)
  4149  	c.urlParams_.Set("prettyPrint", "false")
  4150  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/userWorkloadsConfigMaps")
  4151  	urls += "?" + c.urlParams_.Encode()
  4152  	req, err := http.NewRequest("POST", urls, body)
  4153  	if err != nil {
  4154  		return nil, err
  4155  	}
  4156  	req.Header = reqHeaders
  4157  	googleapi.Expand(req.URL, map[string]string{
  4158  		"parent": c.parent,
  4159  	})
  4160  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4161  }
  4162  
  4163  // Do executes the "composer.projects.locations.environments.userWorkloadsConfigMaps.create" call.
  4164  // Any non-2xx status code is an error. Response headers are in either
  4165  // *UserWorkloadsConfigMap.ServerResponse.Header or (if a response was returned
  4166  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  4167  // check whether the returned error was because http.StatusNotModified was
  4168  // returned.
  4169  func (c *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsCreateCall) Do(opts ...googleapi.CallOption) (*UserWorkloadsConfigMap, error) {
  4170  	gensupport.SetOptions(c.urlParams_, opts...)
  4171  	res, err := c.doRequest("json")
  4172  	if res != nil && res.StatusCode == http.StatusNotModified {
  4173  		if res.Body != nil {
  4174  			res.Body.Close()
  4175  		}
  4176  		return nil, gensupport.WrapError(&googleapi.Error{
  4177  			Code:   res.StatusCode,
  4178  			Header: res.Header,
  4179  		})
  4180  	}
  4181  	if err != nil {
  4182  		return nil, err
  4183  	}
  4184  	defer googleapi.CloseBody(res)
  4185  	if err := googleapi.CheckResponse(res); err != nil {
  4186  		return nil, gensupport.WrapError(err)
  4187  	}
  4188  	ret := &UserWorkloadsConfigMap{
  4189  		ServerResponse: googleapi.ServerResponse{
  4190  			Header:         res.Header,
  4191  			HTTPStatusCode: res.StatusCode,
  4192  		},
  4193  	}
  4194  	target := &ret
  4195  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4196  		return nil, err
  4197  	}
  4198  	return ret, nil
  4199  }
  4200  
  4201  type ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsDeleteCall struct {
  4202  	s          *Service
  4203  	name       string
  4204  	urlParams_ gensupport.URLParams
  4205  	ctx_       context.Context
  4206  	header_    http.Header
  4207  }
  4208  
  4209  // Delete: Deletes a user workloads ConfigMap. This method is supported for
  4210  // Cloud Composer environments in versions composer-3.*.*-airflow-*.*.* and
  4211  // newer.
  4212  //
  4213  //   - name: The ConfigMap to delete, in the form:
  4214  //     "projects/{projectId}/locations/{locationId}/environments/{environmentId}/u
  4215  //     serWorkloadsConfigMaps/{userWorkloadsConfigMapId}".
  4216  func (r *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsService) Delete(name string) *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsDeleteCall {
  4217  	c := &ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4218  	c.name = name
  4219  	return c
  4220  }
  4221  
  4222  // Fields allows partial responses to be retrieved. See
  4223  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4224  // details.
  4225  func (c *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsDeleteCall {
  4226  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4227  	return c
  4228  }
  4229  
  4230  // Context sets the context to be used in this call's Do method.
  4231  func (c *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsDeleteCall) Context(ctx context.Context) *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsDeleteCall {
  4232  	c.ctx_ = ctx
  4233  	return c
  4234  }
  4235  
  4236  // Header returns a http.Header that can be modified by the caller to add
  4237  // headers to the request.
  4238  func (c *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsDeleteCall) Header() http.Header {
  4239  	if c.header_ == nil {
  4240  		c.header_ = make(http.Header)
  4241  	}
  4242  	return c.header_
  4243  }
  4244  
  4245  func (c *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsDeleteCall) doRequest(alt string) (*http.Response, error) {
  4246  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  4247  	var body io.Reader = nil
  4248  	c.urlParams_.Set("alt", alt)
  4249  	c.urlParams_.Set("prettyPrint", "false")
  4250  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
  4251  	urls += "?" + c.urlParams_.Encode()
  4252  	req, err := http.NewRequest("DELETE", urls, body)
  4253  	if err != nil {
  4254  		return nil, err
  4255  	}
  4256  	req.Header = reqHeaders
  4257  	googleapi.Expand(req.URL, map[string]string{
  4258  		"name": c.name,
  4259  	})
  4260  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4261  }
  4262  
  4263  // Do executes the "composer.projects.locations.environments.userWorkloadsConfigMaps.delete" call.
  4264  // Any non-2xx status code is an error. Response headers are in either
  4265  // *Empty.ServerResponse.Header or (if a response was returned at all) in
  4266  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  4267  // whether the returned error was because http.StatusNotModified was returned.
  4268  func (c *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
  4269  	gensupport.SetOptions(c.urlParams_, opts...)
  4270  	res, err := c.doRequest("json")
  4271  	if res != nil && res.StatusCode == http.StatusNotModified {
  4272  		if res.Body != nil {
  4273  			res.Body.Close()
  4274  		}
  4275  		return nil, gensupport.WrapError(&googleapi.Error{
  4276  			Code:   res.StatusCode,
  4277  			Header: res.Header,
  4278  		})
  4279  	}
  4280  	if err != nil {
  4281  		return nil, err
  4282  	}
  4283  	defer googleapi.CloseBody(res)
  4284  	if err := googleapi.CheckResponse(res); err != nil {
  4285  		return nil, gensupport.WrapError(err)
  4286  	}
  4287  	ret := &Empty{
  4288  		ServerResponse: googleapi.ServerResponse{
  4289  			Header:         res.Header,
  4290  			HTTPStatusCode: res.StatusCode,
  4291  		},
  4292  	}
  4293  	target := &ret
  4294  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4295  		return nil, err
  4296  	}
  4297  	return ret, nil
  4298  }
  4299  
  4300  type ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsGetCall struct {
  4301  	s            *Service
  4302  	name         string
  4303  	urlParams_   gensupport.URLParams
  4304  	ifNoneMatch_ string
  4305  	ctx_         context.Context
  4306  	header_      http.Header
  4307  }
  4308  
  4309  // Get: Gets an existing user workloads ConfigMap. This method is supported for
  4310  // Cloud Composer environments in versions composer-3.*.*-airflow-*.*.* and
  4311  // newer.
  4312  //
  4313  //   - name: The resource name of the ConfigMap to get, in the form:
  4314  //     "projects/{projectId}/locations/{locationId}/environments/{environmentId}/u
  4315  //     serWorkloadsConfigMaps/{userWorkloadsConfigMapId}".
  4316  func (r *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsService) Get(name string) *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsGetCall {
  4317  	c := &ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4318  	c.name = name
  4319  	return c
  4320  }
  4321  
  4322  // Fields allows partial responses to be retrieved. See
  4323  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4324  // details.
  4325  func (c *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsGetCall {
  4326  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4327  	return c
  4328  }
  4329  
  4330  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  4331  // object's ETag matches the given value. This is useful for getting updates
  4332  // only after the object has changed since the last request.
  4333  func (c *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsGetCall {
  4334  	c.ifNoneMatch_ = entityTag
  4335  	return c
  4336  }
  4337  
  4338  // Context sets the context to be used in this call's Do method.
  4339  func (c *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsGetCall) Context(ctx context.Context) *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsGetCall {
  4340  	c.ctx_ = ctx
  4341  	return c
  4342  }
  4343  
  4344  // Header returns a http.Header that can be modified by the caller to add
  4345  // headers to the request.
  4346  func (c *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsGetCall) Header() http.Header {
  4347  	if c.header_ == nil {
  4348  		c.header_ = make(http.Header)
  4349  	}
  4350  	return c.header_
  4351  }
  4352  
  4353  func (c *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsGetCall) doRequest(alt string) (*http.Response, error) {
  4354  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  4355  	if c.ifNoneMatch_ != "" {
  4356  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  4357  	}
  4358  	var body io.Reader = nil
  4359  	c.urlParams_.Set("alt", alt)
  4360  	c.urlParams_.Set("prettyPrint", "false")
  4361  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
  4362  	urls += "?" + c.urlParams_.Encode()
  4363  	req, err := http.NewRequest("GET", urls, body)
  4364  	if err != nil {
  4365  		return nil, err
  4366  	}
  4367  	req.Header = reqHeaders
  4368  	googleapi.Expand(req.URL, map[string]string{
  4369  		"name": c.name,
  4370  	})
  4371  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4372  }
  4373  
  4374  // Do executes the "composer.projects.locations.environments.userWorkloadsConfigMaps.get" call.
  4375  // Any non-2xx status code is an error. Response headers are in either
  4376  // *UserWorkloadsConfigMap.ServerResponse.Header or (if a response was returned
  4377  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  4378  // check whether the returned error was because http.StatusNotModified was
  4379  // returned.
  4380  func (c *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsGetCall) Do(opts ...googleapi.CallOption) (*UserWorkloadsConfigMap, error) {
  4381  	gensupport.SetOptions(c.urlParams_, opts...)
  4382  	res, err := c.doRequest("json")
  4383  	if res != nil && res.StatusCode == http.StatusNotModified {
  4384  		if res.Body != nil {
  4385  			res.Body.Close()
  4386  		}
  4387  		return nil, gensupport.WrapError(&googleapi.Error{
  4388  			Code:   res.StatusCode,
  4389  			Header: res.Header,
  4390  		})
  4391  	}
  4392  	if err != nil {
  4393  		return nil, err
  4394  	}
  4395  	defer googleapi.CloseBody(res)
  4396  	if err := googleapi.CheckResponse(res); err != nil {
  4397  		return nil, gensupport.WrapError(err)
  4398  	}
  4399  	ret := &UserWorkloadsConfigMap{
  4400  		ServerResponse: googleapi.ServerResponse{
  4401  			Header:         res.Header,
  4402  			HTTPStatusCode: res.StatusCode,
  4403  		},
  4404  	}
  4405  	target := &ret
  4406  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4407  		return nil, err
  4408  	}
  4409  	return ret, nil
  4410  }
  4411  
  4412  type ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsListCall struct {
  4413  	s            *Service
  4414  	parent       string
  4415  	urlParams_   gensupport.URLParams
  4416  	ifNoneMatch_ string
  4417  	ctx_         context.Context
  4418  	header_      http.Header
  4419  }
  4420  
  4421  // List: Lists user workloads ConfigMaps. This method is supported for Cloud
  4422  // Composer environments in versions composer-3.*.*-airflow-*.*.* and newer.
  4423  //
  4424  //   - parent: List ConfigMaps in the given environment, in the form:
  4425  //     "projects/{projectId}/locations/{locationId}/environments/{environmentId}".
  4426  func (r *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsService) List(parent string) *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsListCall {
  4427  	c := &ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4428  	c.parent = parent
  4429  	return c
  4430  }
  4431  
  4432  // PageSize sets the optional parameter "pageSize": The maximum number of
  4433  // ConfigMaps to return.
  4434  func (c *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsListCall) PageSize(pageSize int64) *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsListCall {
  4435  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  4436  	return c
  4437  }
  4438  
  4439  // PageToken sets the optional parameter "pageToken": The next_page_token value
  4440  // returned from a previous List request, if any.
  4441  func (c *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsListCall) PageToken(pageToken string) *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsListCall {
  4442  	c.urlParams_.Set("pageToken", pageToken)
  4443  	return c
  4444  }
  4445  
  4446  // Fields allows partial responses to be retrieved. See
  4447  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4448  // details.
  4449  func (c *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsListCall {
  4450  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4451  	return c
  4452  }
  4453  
  4454  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  4455  // object's ETag matches the given value. This is useful for getting updates
  4456  // only after the object has changed since the last request.
  4457  func (c *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsListCall {
  4458  	c.ifNoneMatch_ = entityTag
  4459  	return c
  4460  }
  4461  
  4462  // Context sets the context to be used in this call's Do method.
  4463  func (c *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsListCall) Context(ctx context.Context) *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsListCall {
  4464  	c.ctx_ = ctx
  4465  	return c
  4466  }
  4467  
  4468  // Header returns a http.Header that can be modified by the caller to add
  4469  // headers to the request.
  4470  func (c *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsListCall) Header() http.Header {
  4471  	if c.header_ == nil {
  4472  		c.header_ = make(http.Header)
  4473  	}
  4474  	return c.header_
  4475  }
  4476  
  4477  func (c *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsListCall) doRequest(alt string) (*http.Response, error) {
  4478  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  4479  	if c.ifNoneMatch_ != "" {
  4480  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  4481  	}
  4482  	var body io.Reader = nil
  4483  	c.urlParams_.Set("alt", alt)
  4484  	c.urlParams_.Set("prettyPrint", "false")
  4485  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/userWorkloadsConfigMaps")
  4486  	urls += "?" + c.urlParams_.Encode()
  4487  	req, err := http.NewRequest("GET", urls, body)
  4488  	if err != nil {
  4489  		return nil, err
  4490  	}
  4491  	req.Header = reqHeaders
  4492  	googleapi.Expand(req.URL, map[string]string{
  4493  		"parent": c.parent,
  4494  	})
  4495  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4496  }
  4497  
  4498  // Do executes the "composer.projects.locations.environments.userWorkloadsConfigMaps.list" call.
  4499  // Any non-2xx status code is an error. Response headers are in either
  4500  // *ListUserWorkloadsConfigMapsResponse.ServerResponse.Header or (if a response
  4501  // was returned at all) in error.(*googleapi.Error).Header. Use
  4502  // googleapi.IsNotModified to check whether the returned error was because
  4503  // http.StatusNotModified was returned.
  4504  func (c *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsListCall) Do(opts ...googleapi.CallOption) (*ListUserWorkloadsConfigMapsResponse, error) {
  4505  	gensupport.SetOptions(c.urlParams_, opts...)
  4506  	res, err := c.doRequest("json")
  4507  	if res != nil && res.StatusCode == http.StatusNotModified {
  4508  		if res.Body != nil {
  4509  			res.Body.Close()
  4510  		}
  4511  		return nil, gensupport.WrapError(&googleapi.Error{
  4512  			Code:   res.StatusCode,
  4513  			Header: res.Header,
  4514  		})
  4515  	}
  4516  	if err != nil {
  4517  		return nil, err
  4518  	}
  4519  	defer googleapi.CloseBody(res)
  4520  	if err := googleapi.CheckResponse(res); err != nil {
  4521  		return nil, gensupport.WrapError(err)
  4522  	}
  4523  	ret := &ListUserWorkloadsConfigMapsResponse{
  4524  		ServerResponse: googleapi.ServerResponse{
  4525  			Header:         res.Header,
  4526  			HTTPStatusCode: res.StatusCode,
  4527  		},
  4528  	}
  4529  	target := &ret
  4530  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4531  		return nil, err
  4532  	}
  4533  	return ret, nil
  4534  }
  4535  
  4536  // Pages invokes f for each page of results.
  4537  // A non-nil error returned from f will halt the iteration.
  4538  // The provided context supersedes any context provided to the Context method.
  4539  func (c *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsListCall) Pages(ctx context.Context, f func(*ListUserWorkloadsConfigMapsResponse) error) error {
  4540  	c.ctx_ = ctx
  4541  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  4542  	for {
  4543  		x, err := c.Do()
  4544  		if err != nil {
  4545  			return err
  4546  		}
  4547  		if err := f(x); err != nil {
  4548  			return err
  4549  		}
  4550  		if x.NextPageToken == "" {
  4551  			return nil
  4552  		}
  4553  		c.PageToken(x.NextPageToken)
  4554  	}
  4555  }
  4556  
  4557  type ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsUpdateCall struct {
  4558  	s                      *Service
  4559  	name                   string
  4560  	userworkloadsconfigmap *UserWorkloadsConfigMap
  4561  	urlParams_             gensupport.URLParams
  4562  	ctx_                   context.Context
  4563  	header_                http.Header
  4564  }
  4565  
  4566  // Update: Updates a user workloads ConfigMap. This method is supported for
  4567  // Cloud Composer environments in versions composer-3.*.*-airflow-*.*.* and
  4568  // newer.
  4569  //
  4570  //   - name: Identifier. The resource name of the ConfigMap, in the form:
  4571  //     "projects/{projectId}/locations/{locationId}/environments/{environmentId}/u
  4572  //     serWorkloadsConfigMaps/{userWorkloadsConfigMapId}".
  4573  func (r *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsService) Update(name string, userworkloadsconfigmap *UserWorkloadsConfigMap) *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsUpdateCall {
  4574  	c := &ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4575  	c.name = name
  4576  	c.userworkloadsconfigmap = userworkloadsconfigmap
  4577  	return c
  4578  }
  4579  
  4580  // Fields allows partial responses to be retrieved. See
  4581  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4582  // details.
  4583  func (c *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsUpdateCall) Fields(s ...googleapi.Field) *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsUpdateCall {
  4584  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4585  	return c
  4586  }
  4587  
  4588  // Context sets the context to be used in this call's Do method.
  4589  func (c *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsUpdateCall) Context(ctx context.Context) *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsUpdateCall {
  4590  	c.ctx_ = ctx
  4591  	return c
  4592  }
  4593  
  4594  // Header returns a http.Header that can be modified by the caller to add
  4595  // headers to the request.
  4596  func (c *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsUpdateCall) Header() http.Header {
  4597  	if c.header_ == nil {
  4598  		c.header_ = make(http.Header)
  4599  	}
  4600  	return c.header_
  4601  }
  4602  
  4603  func (c *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsUpdateCall) doRequest(alt string) (*http.Response, error) {
  4604  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  4605  	var body io.Reader = nil
  4606  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.userworkloadsconfigmap)
  4607  	if err != nil {
  4608  		return nil, err
  4609  	}
  4610  	c.urlParams_.Set("alt", alt)
  4611  	c.urlParams_.Set("prettyPrint", "false")
  4612  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
  4613  	urls += "?" + c.urlParams_.Encode()
  4614  	req, err := http.NewRequest("PUT", urls, body)
  4615  	if err != nil {
  4616  		return nil, err
  4617  	}
  4618  	req.Header = reqHeaders
  4619  	googleapi.Expand(req.URL, map[string]string{
  4620  		"name": c.name,
  4621  	})
  4622  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4623  }
  4624  
  4625  // Do executes the "composer.projects.locations.environments.userWorkloadsConfigMaps.update" call.
  4626  // Any non-2xx status code is an error. Response headers are in either
  4627  // *UserWorkloadsConfigMap.ServerResponse.Header or (if a response was returned
  4628  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  4629  // check whether the returned error was because http.StatusNotModified was
  4630  // returned.
  4631  func (c *ProjectsLocationsEnvironmentsUserWorkloadsConfigMapsUpdateCall) Do(opts ...googleapi.CallOption) (*UserWorkloadsConfigMap, error) {
  4632  	gensupport.SetOptions(c.urlParams_, opts...)
  4633  	res, err := c.doRequest("json")
  4634  	if res != nil && res.StatusCode == http.StatusNotModified {
  4635  		if res.Body != nil {
  4636  			res.Body.Close()
  4637  		}
  4638  		return nil, gensupport.WrapError(&googleapi.Error{
  4639  			Code:   res.StatusCode,
  4640  			Header: res.Header,
  4641  		})
  4642  	}
  4643  	if err != nil {
  4644  		return nil, err
  4645  	}
  4646  	defer googleapi.CloseBody(res)
  4647  	if err := googleapi.CheckResponse(res); err != nil {
  4648  		return nil, gensupport.WrapError(err)
  4649  	}
  4650  	ret := &UserWorkloadsConfigMap{
  4651  		ServerResponse: googleapi.ServerResponse{
  4652  			Header:         res.Header,
  4653  			HTTPStatusCode: res.StatusCode,
  4654  		},
  4655  	}
  4656  	target := &ret
  4657  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4658  		return nil, err
  4659  	}
  4660  	return ret, nil
  4661  }
  4662  
  4663  type ProjectsLocationsEnvironmentsUserWorkloadsSecretsCreateCall struct {
  4664  	s                   *Service
  4665  	parent              string
  4666  	userworkloadssecret *UserWorkloadsSecret
  4667  	urlParams_          gensupport.URLParams
  4668  	ctx_                context.Context
  4669  	header_             http.Header
  4670  }
  4671  
  4672  // Create: Creates a user workloads Secret. This method is supported for Cloud
  4673  // Composer environments in versions composer-3.*.*-airflow-*.*.* and newer.
  4674  //
  4675  //   - parent: The environment name to create a Secret for, in the form:
  4676  //     "projects/{projectId}/locations/{locationId}/environments/{environmentId}".
  4677  func (r *ProjectsLocationsEnvironmentsUserWorkloadsSecretsService) Create(parent string, userworkloadssecret *UserWorkloadsSecret) *ProjectsLocationsEnvironmentsUserWorkloadsSecretsCreateCall {
  4678  	c := &ProjectsLocationsEnvironmentsUserWorkloadsSecretsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4679  	c.parent = parent
  4680  	c.userworkloadssecret = userworkloadssecret
  4681  	return c
  4682  }
  4683  
  4684  // Fields allows partial responses to be retrieved. See
  4685  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4686  // details.
  4687  func (c *ProjectsLocationsEnvironmentsUserWorkloadsSecretsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsEnvironmentsUserWorkloadsSecretsCreateCall {
  4688  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4689  	return c
  4690  }
  4691  
  4692  // Context sets the context to be used in this call's Do method.
  4693  func (c *ProjectsLocationsEnvironmentsUserWorkloadsSecretsCreateCall) Context(ctx context.Context) *ProjectsLocationsEnvironmentsUserWorkloadsSecretsCreateCall {
  4694  	c.ctx_ = ctx
  4695  	return c
  4696  }
  4697  
  4698  // Header returns a http.Header that can be modified by the caller to add
  4699  // headers to the request.
  4700  func (c *ProjectsLocationsEnvironmentsUserWorkloadsSecretsCreateCall) Header() http.Header {
  4701  	if c.header_ == nil {
  4702  		c.header_ = make(http.Header)
  4703  	}
  4704  	return c.header_
  4705  }
  4706  
  4707  func (c *ProjectsLocationsEnvironmentsUserWorkloadsSecretsCreateCall) doRequest(alt string) (*http.Response, error) {
  4708  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  4709  	var body io.Reader = nil
  4710  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.userworkloadssecret)
  4711  	if err != nil {
  4712  		return nil, err
  4713  	}
  4714  	c.urlParams_.Set("alt", alt)
  4715  	c.urlParams_.Set("prettyPrint", "false")
  4716  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/userWorkloadsSecrets")
  4717  	urls += "?" + c.urlParams_.Encode()
  4718  	req, err := http.NewRequest("POST", urls, body)
  4719  	if err != nil {
  4720  		return nil, err
  4721  	}
  4722  	req.Header = reqHeaders
  4723  	googleapi.Expand(req.URL, map[string]string{
  4724  		"parent": c.parent,
  4725  	})
  4726  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4727  }
  4728  
  4729  // Do executes the "composer.projects.locations.environments.userWorkloadsSecrets.create" call.
  4730  // Any non-2xx status code is an error. Response headers are in either
  4731  // *UserWorkloadsSecret.ServerResponse.Header or (if a response was returned at
  4732  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  4733  // check whether the returned error was because http.StatusNotModified was
  4734  // returned.
  4735  func (c *ProjectsLocationsEnvironmentsUserWorkloadsSecretsCreateCall) Do(opts ...googleapi.CallOption) (*UserWorkloadsSecret, error) {
  4736  	gensupport.SetOptions(c.urlParams_, opts...)
  4737  	res, err := c.doRequest("json")
  4738  	if res != nil && res.StatusCode == http.StatusNotModified {
  4739  		if res.Body != nil {
  4740  			res.Body.Close()
  4741  		}
  4742  		return nil, gensupport.WrapError(&googleapi.Error{
  4743  			Code:   res.StatusCode,
  4744  			Header: res.Header,
  4745  		})
  4746  	}
  4747  	if err != nil {
  4748  		return nil, err
  4749  	}
  4750  	defer googleapi.CloseBody(res)
  4751  	if err := googleapi.CheckResponse(res); err != nil {
  4752  		return nil, gensupport.WrapError(err)
  4753  	}
  4754  	ret := &UserWorkloadsSecret{
  4755  		ServerResponse: googleapi.ServerResponse{
  4756  			Header:         res.Header,
  4757  			HTTPStatusCode: res.StatusCode,
  4758  		},
  4759  	}
  4760  	target := &ret
  4761  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4762  		return nil, err
  4763  	}
  4764  	return ret, nil
  4765  }
  4766  
  4767  type ProjectsLocationsEnvironmentsUserWorkloadsSecretsDeleteCall struct {
  4768  	s          *Service
  4769  	name       string
  4770  	urlParams_ gensupport.URLParams
  4771  	ctx_       context.Context
  4772  	header_    http.Header
  4773  }
  4774  
  4775  // Delete: Deletes a user workloads Secret. This method is supported for Cloud
  4776  // Composer environments in versions composer-3.*.*-airflow-*.*.* and newer.
  4777  //
  4778  //   - name: The Secret to delete, in the form:
  4779  //     "projects/{projectId}/locations/{locationId}/environments/{environmentId}/u
  4780  //     serWorkloadsSecrets/{userWorkloadsSecretId}".
  4781  func (r *ProjectsLocationsEnvironmentsUserWorkloadsSecretsService) Delete(name string) *ProjectsLocationsEnvironmentsUserWorkloadsSecretsDeleteCall {
  4782  	c := &ProjectsLocationsEnvironmentsUserWorkloadsSecretsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4783  	c.name = name
  4784  	return c
  4785  }
  4786  
  4787  // Fields allows partial responses to be retrieved. See
  4788  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4789  // details.
  4790  func (c *ProjectsLocationsEnvironmentsUserWorkloadsSecretsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsEnvironmentsUserWorkloadsSecretsDeleteCall {
  4791  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4792  	return c
  4793  }
  4794  
  4795  // Context sets the context to be used in this call's Do method.
  4796  func (c *ProjectsLocationsEnvironmentsUserWorkloadsSecretsDeleteCall) Context(ctx context.Context) *ProjectsLocationsEnvironmentsUserWorkloadsSecretsDeleteCall {
  4797  	c.ctx_ = ctx
  4798  	return c
  4799  }
  4800  
  4801  // Header returns a http.Header that can be modified by the caller to add
  4802  // headers to the request.
  4803  func (c *ProjectsLocationsEnvironmentsUserWorkloadsSecretsDeleteCall) Header() http.Header {
  4804  	if c.header_ == nil {
  4805  		c.header_ = make(http.Header)
  4806  	}
  4807  	return c.header_
  4808  }
  4809  
  4810  func (c *ProjectsLocationsEnvironmentsUserWorkloadsSecretsDeleteCall) doRequest(alt string) (*http.Response, error) {
  4811  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  4812  	var body io.Reader = nil
  4813  	c.urlParams_.Set("alt", alt)
  4814  	c.urlParams_.Set("prettyPrint", "false")
  4815  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
  4816  	urls += "?" + c.urlParams_.Encode()
  4817  	req, err := http.NewRequest("DELETE", urls, body)
  4818  	if err != nil {
  4819  		return nil, err
  4820  	}
  4821  	req.Header = reqHeaders
  4822  	googleapi.Expand(req.URL, map[string]string{
  4823  		"name": c.name,
  4824  	})
  4825  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4826  }
  4827  
  4828  // Do executes the "composer.projects.locations.environments.userWorkloadsSecrets.delete" call.
  4829  // Any non-2xx status code is an error. Response headers are in either
  4830  // *Empty.ServerResponse.Header or (if a response was returned at all) in
  4831  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  4832  // whether the returned error was because http.StatusNotModified was returned.
  4833  func (c *ProjectsLocationsEnvironmentsUserWorkloadsSecretsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
  4834  	gensupport.SetOptions(c.urlParams_, opts...)
  4835  	res, err := c.doRequest("json")
  4836  	if res != nil && res.StatusCode == http.StatusNotModified {
  4837  		if res.Body != nil {
  4838  			res.Body.Close()
  4839  		}
  4840  		return nil, gensupport.WrapError(&googleapi.Error{
  4841  			Code:   res.StatusCode,
  4842  			Header: res.Header,
  4843  		})
  4844  	}
  4845  	if err != nil {
  4846  		return nil, err
  4847  	}
  4848  	defer googleapi.CloseBody(res)
  4849  	if err := googleapi.CheckResponse(res); err != nil {
  4850  		return nil, gensupport.WrapError(err)
  4851  	}
  4852  	ret := &Empty{
  4853  		ServerResponse: googleapi.ServerResponse{
  4854  			Header:         res.Header,
  4855  			HTTPStatusCode: res.StatusCode,
  4856  		},
  4857  	}
  4858  	target := &ret
  4859  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4860  		return nil, err
  4861  	}
  4862  	return ret, nil
  4863  }
  4864  
  4865  type ProjectsLocationsEnvironmentsUserWorkloadsSecretsGetCall struct {
  4866  	s            *Service
  4867  	name         string
  4868  	urlParams_   gensupport.URLParams
  4869  	ifNoneMatch_ string
  4870  	ctx_         context.Context
  4871  	header_      http.Header
  4872  }
  4873  
  4874  // Get: Gets an existing user workloads Secret. Values of the "data" field in
  4875  // the response are cleared. This method is supported for Cloud Composer
  4876  // environments in versions composer-3.*.*-airflow-*.*.* and newer.
  4877  //
  4878  //   - name: The resource name of the Secret to get, in the form:
  4879  //     "projects/{projectId}/locations/{locationId}/environments/{environmentId}/u
  4880  //     serWorkloadsSecrets/{userWorkloadsSecretId}".
  4881  func (r *ProjectsLocationsEnvironmentsUserWorkloadsSecretsService) Get(name string) *ProjectsLocationsEnvironmentsUserWorkloadsSecretsGetCall {
  4882  	c := &ProjectsLocationsEnvironmentsUserWorkloadsSecretsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4883  	c.name = name
  4884  	return c
  4885  }
  4886  
  4887  // Fields allows partial responses to be retrieved. See
  4888  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4889  // details.
  4890  func (c *ProjectsLocationsEnvironmentsUserWorkloadsSecretsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsEnvironmentsUserWorkloadsSecretsGetCall {
  4891  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4892  	return c
  4893  }
  4894  
  4895  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  4896  // object's ETag matches the given value. This is useful for getting updates
  4897  // only after the object has changed since the last request.
  4898  func (c *ProjectsLocationsEnvironmentsUserWorkloadsSecretsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsEnvironmentsUserWorkloadsSecretsGetCall {
  4899  	c.ifNoneMatch_ = entityTag
  4900  	return c
  4901  }
  4902  
  4903  // Context sets the context to be used in this call's Do method.
  4904  func (c *ProjectsLocationsEnvironmentsUserWorkloadsSecretsGetCall) Context(ctx context.Context) *ProjectsLocationsEnvironmentsUserWorkloadsSecretsGetCall {
  4905  	c.ctx_ = ctx
  4906  	return c
  4907  }
  4908  
  4909  // Header returns a http.Header that can be modified by the caller to add
  4910  // headers to the request.
  4911  func (c *ProjectsLocationsEnvironmentsUserWorkloadsSecretsGetCall) Header() http.Header {
  4912  	if c.header_ == nil {
  4913  		c.header_ = make(http.Header)
  4914  	}
  4915  	return c.header_
  4916  }
  4917  
  4918  func (c *ProjectsLocationsEnvironmentsUserWorkloadsSecretsGetCall) doRequest(alt string) (*http.Response, error) {
  4919  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  4920  	if c.ifNoneMatch_ != "" {
  4921  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  4922  	}
  4923  	var body io.Reader = nil
  4924  	c.urlParams_.Set("alt", alt)
  4925  	c.urlParams_.Set("prettyPrint", "false")
  4926  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
  4927  	urls += "?" + c.urlParams_.Encode()
  4928  	req, err := http.NewRequest("GET", urls, body)
  4929  	if err != nil {
  4930  		return nil, err
  4931  	}
  4932  	req.Header = reqHeaders
  4933  	googleapi.Expand(req.URL, map[string]string{
  4934  		"name": c.name,
  4935  	})
  4936  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4937  }
  4938  
  4939  // Do executes the "composer.projects.locations.environments.userWorkloadsSecrets.get" call.
  4940  // Any non-2xx status code is an error. Response headers are in either
  4941  // *UserWorkloadsSecret.ServerResponse.Header or (if a response was returned at
  4942  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  4943  // check whether the returned error was because http.StatusNotModified was
  4944  // returned.
  4945  func (c *ProjectsLocationsEnvironmentsUserWorkloadsSecretsGetCall) Do(opts ...googleapi.CallOption) (*UserWorkloadsSecret, error) {
  4946  	gensupport.SetOptions(c.urlParams_, opts...)
  4947  	res, err := c.doRequest("json")
  4948  	if res != nil && res.StatusCode == http.StatusNotModified {
  4949  		if res.Body != nil {
  4950  			res.Body.Close()
  4951  		}
  4952  		return nil, gensupport.WrapError(&googleapi.Error{
  4953  			Code:   res.StatusCode,
  4954  			Header: res.Header,
  4955  		})
  4956  	}
  4957  	if err != nil {
  4958  		return nil, err
  4959  	}
  4960  	defer googleapi.CloseBody(res)
  4961  	if err := googleapi.CheckResponse(res); err != nil {
  4962  		return nil, gensupport.WrapError(err)
  4963  	}
  4964  	ret := &UserWorkloadsSecret{
  4965  		ServerResponse: googleapi.ServerResponse{
  4966  			Header:         res.Header,
  4967  			HTTPStatusCode: res.StatusCode,
  4968  		},
  4969  	}
  4970  	target := &ret
  4971  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4972  		return nil, err
  4973  	}
  4974  	return ret, nil
  4975  }
  4976  
  4977  type ProjectsLocationsEnvironmentsUserWorkloadsSecretsListCall struct {
  4978  	s            *Service
  4979  	parent       string
  4980  	urlParams_   gensupport.URLParams
  4981  	ifNoneMatch_ string
  4982  	ctx_         context.Context
  4983  	header_      http.Header
  4984  }
  4985  
  4986  // List: Lists user workloads Secrets. This method is supported for Cloud
  4987  // Composer environments in versions composer-3.*.*-airflow-*.*.* and newer.
  4988  //
  4989  //   - parent: List Secrets in the given environment, in the form:
  4990  //     "projects/{projectId}/locations/{locationId}/environments/{environmentId}".
  4991  func (r *ProjectsLocationsEnvironmentsUserWorkloadsSecretsService) List(parent string) *ProjectsLocationsEnvironmentsUserWorkloadsSecretsListCall {
  4992  	c := &ProjectsLocationsEnvironmentsUserWorkloadsSecretsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4993  	c.parent = parent
  4994  	return c
  4995  }
  4996  
  4997  // PageSize sets the optional parameter "pageSize": The maximum number of
  4998  // Secrets to return.
  4999  func (c *ProjectsLocationsEnvironmentsUserWorkloadsSecretsListCall) PageSize(pageSize int64) *ProjectsLocationsEnvironmentsUserWorkloadsSecretsListCall {
  5000  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  5001  	return c
  5002  }
  5003  
  5004  // PageToken sets the optional parameter "pageToken": The next_page_token value
  5005  // returned from a previous List request, if any.
  5006  func (c *ProjectsLocationsEnvironmentsUserWorkloadsSecretsListCall) PageToken(pageToken string) *ProjectsLocationsEnvironmentsUserWorkloadsSecretsListCall {
  5007  	c.urlParams_.Set("pageToken", pageToken)
  5008  	return c
  5009  }
  5010  
  5011  // Fields allows partial responses to be retrieved. See
  5012  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5013  // details.
  5014  func (c *ProjectsLocationsEnvironmentsUserWorkloadsSecretsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsEnvironmentsUserWorkloadsSecretsListCall {
  5015  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5016  	return c
  5017  }
  5018  
  5019  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  5020  // object's ETag matches the given value. This is useful for getting updates
  5021  // only after the object has changed since the last request.
  5022  func (c *ProjectsLocationsEnvironmentsUserWorkloadsSecretsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsEnvironmentsUserWorkloadsSecretsListCall {
  5023  	c.ifNoneMatch_ = entityTag
  5024  	return c
  5025  }
  5026  
  5027  // Context sets the context to be used in this call's Do method.
  5028  func (c *ProjectsLocationsEnvironmentsUserWorkloadsSecretsListCall) Context(ctx context.Context) *ProjectsLocationsEnvironmentsUserWorkloadsSecretsListCall {
  5029  	c.ctx_ = ctx
  5030  	return c
  5031  }
  5032  
  5033  // Header returns a http.Header that can be modified by the caller to add
  5034  // headers to the request.
  5035  func (c *ProjectsLocationsEnvironmentsUserWorkloadsSecretsListCall) Header() http.Header {
  5036  	if c.header_ == nil {
  5037  		c.header_ = make(http.Header)
  5038  	}
  5039  	return c.header_
  5040  }
  5041  
  5042  func (c *ProjectsLocationsEnvironmentsUserWorkloadsSecretsListCall) doRequest(alt string) (*http.Response, error) {
  5043  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  5044  	if c.ifNoneMatch_ != "" {
  5045  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  5046  	}
  5047  	var body io.Reader = nil
  5048  	c.urlParams_.Set("alt", alt)
  5049  	c.urlParams_.Set("prettyPrint", "false")
  5050  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/userWorkloadsSecrets")
  5051  	urls += "?" + c.urlParams_.Encode()
  5052  	req, err := http.NewRequest("GET", urls, body)
  5053  	if err != nil {
  5054  		return nil, err
  5055  	}
  5056  	req.Header = reqHeaders
  5057  	googleapi.Expand(req.URL, map[string]string{
  5058  		"parent": c.parent,
  5059  	})
  5060  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5061  }
  5062  
  5063  // Do executes the "composer.projects.locations.environments.userWorkloadsSecrets.list" call.
  5064  // Any non-2xx status code is an error. Response headers are in either
  5065  // *ListUserWorkloadsSecretsResponse.ServerResponse.Header or (if a response
  5066  // was returned at all) in error.(*googleapi.Error).Header. Use
  5067  // googleapi.IsNotModified to check whether the returned error was because
  5068  // http.StatusNotModified was returned.
  5069  func (c *ProjectsLocationsEnvironmentsUserWorkloadsSecretsListCall) Do(opts ...googleapi.CallOption) (*ListUserWorkloadsSecretsResponse, error) {
  5070  	gensupport.SetOptions(c.urlParams_, opts...)
  5071  	res, err := c.doRequest("json")
  5072  	if res != nil && res.StatusCode == http.StatusNotModified {
  5073  		if res.Body != nil {
  5074  			res.Body.Close()
  5075  		}
  5076  		return nil, gensupport.WrapError(&googleapi.Error{
  5077  			Code:   res.StatusCode,
  5078  			Header: res.Header,
  5079  		})
  5080  	}
  5081  	if err != nil {
  5082  		return nil, err
  5083  	}
  5084  	defer googleapi.CloseBody(res)
  5085  	if err := googleapi.CheckResponse(res); err != nil {
  5086  		return nil, gensupport.WrapError(err)
  5087  	}
  5088  	ret := &ListUserWorkloadsSecretsResponse{
  5089  		ServerResponse: googleapi.ServerResponse{
  5090  			Header:         res.Header,
  5091  			HTTPStatusCode: res.StatusCode,
  5092  		},
  5093  	}
  5094  	target := &ret
  5095  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5096  		return nil, err
  5097  	}
  5098  	return ret, nil
  5099  }
  5100  
  5101  // Pages invokes f for each page of results.
  5102  // A non-nil error returned from f will halt the iteration.
  5103  // The provided context supersedes any context provided to the Context method.
  5104  func (c *ProjectsLocationsEnvironmentsUserWorkloadsSecretsListCall) Pages(ctx context.Context, f func(*ListUserWorkloadsSecretsResponse) error) error {
  5105  	c.ctx_ = ctx
  5106  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  5107  	for {
  5108  		x, err := c.Do()
  5109  		if err != nil {
  5110  			return err
  5111  		}
  5112  		if err := f(x); err != nil {
  5113  			return err
  5114  		}
  5115  		if x.NextPageToken == "" {
  5116  			return nil
  5117  		}
  5118  		c.PageToken(x.NextPageToken)
  5119  	}
  5120  }
  5121  
  5122  type ProjectsLocationsEnvironmentsUserWorkloadsSecretsUpdateCall struct {
  5123  	s                   *Service
  5124  	name                string
  5125  	userworkloadssecret *UserWorkloadsSecret
  5126  	urlParams_          gensupport.URLParams
  5127  	ctx_                context.Context
  5128  	header_             http.Header
  5129  }
  5130  
  5131  // Update: Updates a user workloads Secret. This method is supported for Cloud
  5132  // Composer environments in versions composer-3.*.*-airflow-*.*.* and newer.
  5133  //
  5134  //   - name: Identifier. The resource name of the Secret, in the form:
  5135  //     "projects/{projectId}/locations/{locationId}/environments/{environmentId}/u
  5136  //     serWorkloadsSecrets/{userWorkloadsSecretId}".
  5137  func (r *ProjectsLocationsEnvironmentsUserWorkloadsSecretsService) Update(name string, userworkloadssecret *UserWorkloadsSecret) *ProjectsLocationsEnvironmentsUserWorkloadsSecretsUpdateCall {
  5138  	c := &ProjectsLocationsEnvironmentsUserWorkloadsSecretsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5139  	c.name = name
  5140  	c.userworkloadssecret = userworkloadssecret
  5141  	return c
  5142  }
  5143  
  5144  // Fields allows partial responses to be retrieved. See
  5145  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5146  // details.
  5147  func (c *ProjectsLocationsEnvironmentsUserWorkloadsSecretsUpdateCall) Fields(s ...googleapi.Field) *ProjectsLocationsEnvironmentsUserWorkloadsSecretsUpdateCall {
  5148  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5149  	return c
  5150  }
  5151  
  5152  // Context sets the context to be used in this call's Do method.
  5153  func (c *ProjectsLocationsEnvironmentsUserWorkloadsSecretsUpdateCall) Context(ctx context.Context) *ProjectsLocationsEnvironmentsUserWorkloadsSecretsUpdateCall {
  5154  	c.ctx_ = ctx
  5155  	return c
  5156  }
  5157  
  5158  // Header returns a http.Header that can be modified by the caller to add
  5159  // headers to the request.
  5160  func (c *ProjectsLocationsEnvironmentsUserWorkloadsSecretsUpdateCall) Header() http.Header {
  5161  	if c.header_ == nil {
  5162  		c.header_ = make(http.Header)
  5163  	}
  5164  	return c.header_
  5165  }
  5166  
  5167  func (c *ProjectsLocationsEnvironmentsUserWorkloadsSecretsUpdateCall) doRequest(alt string) (*http.Response, error) {
  5168  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  5169  	var body io.Reader = nil
  5170  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.userworkloadssecret)
  5171  	if err != nil {
  5172  		return nil, err
  5173  	}
  5174  	c.urlParams_.Set("alt", alt)
  5175  	c.urlParams_.Set("prettyPrint", "false")
  5176  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
  5177  	urls += "?" + c.urlParams_.Encode()
  5178  	req, err := http.NewRequest("PUT", urls, body)
  5179  	if err != nil {
  5180  		return nil, err
  5181  	}
  5182  	req.Header = reqHeaders
  5183  	googleapi.Expand(req.URL, map[string]string{
  5184  		"name": c.name,
  5185  	})
  5186  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5187  }
  5188  
  5189  // Do executes the "composer.projects.locations.environments.userWorkloadsSecrets.update" call.
  5190  // Any non-2xx status code is an error. Response headers are in either
  5191  // *UserWorkloadsSecret.ServerResponse.Header or (if a response was returned at
  5192  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  5193  // check whether the returned error was because http.StatusNotModified was
  5194  // returned.
  5195  func (c *ProjectsLocationsEnvironmentsUserWorkloadsSecretsUpdateCall) Do(opts ...googleapi.CallOption) (*UserWorkloadsSecret, error) {
  5196  	gensupport.SetOptions(c.urlParams_, opts...)
  5197  	res, err := c.doRequest("json")
  5198  	if res != nil && res.StatusCode == http.StatusNotModified {
  5199  		if res.Body != nil {
  5200  			res.Body.Close()
  5201  		}
  5202  		return nil, gensupport.WrapError(&googleapi.Error{
  5203  			Code:   res.StatusCode,
  5204  			Header: res.Header,
  5205  		})
  5206  	}
  5207  	if err != nil {
  5208  		return nil, err
  5209  	}
  5210  	defer googleapi.CloseBody(res)
  5211  	if err := googleapi.CheckResponse(res); err != nil {
  5212  		return nil, gensupport.WrapError(err)
  5213  	}
  5214  	ret := &UserWorkloadsSecret{
  5215  		ServerResponse: googleapi.ServerResponse{
  5216  			Header:         res.Header,
  5217  			HTTPStatusCode: res.StatusCode,
  5218  		},
  5219  	}
  5220  	target := &ret
  5221  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5222  		return nil, err
  5223  	}
  5224  	return ret, nil
  5225  }
  5226  
  5227  type ProjectsLocationsEnvironmentsWorkloadsListCall struct {
  5228  	s            *Service
  5229  	parent       string
  5230  	urlParams_   gensupport.URLParams
  5231  	ifNoneMatch_ string
  5232  	ctx_         context.Context
  5233  	header_      http.Header
  5234  }
  5235  
  5236  // List: Lists workloads in a Cloud Composer environment. Workload is a unit
  5237  // that runs a single Composer component. This method is supported for Cloud
  5238  // Composer environments in versions composer-3.*.*-airflow-*.*.* and newer.
  5239  //
  5240  //   - parent: The environment name to get workloads for, in the form:
  5241  //     "projects/{projectId}/locations/{locationId}/environments/{environmentId}".
  5242  func (r *ProjectsLocationsEnvironmentsWorkloadsService) List(parent string) *ProjectsLocationsEnvironmentsWorkloadsListCall {
  5243  	c := &ProjectsLocationsEnvironmentsWorkloadsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5244  	c.parent = parent
  5245  	return c
  5246  }
  5247  
  5248  // Filter sets the optional parameter "filter": The list filter. Currently only
  5249  // supports equality on the type field. The value of a field specified in the
  5250  // filter expression must be one ComposerWorkloadType enum option. It's
  5251  // possible to get multiple types using "OR" operator, e.g.: "type=SCHEDULER OR
  5252  // type=CELERY_WORKER". If not specified, all items are returned.
  5253  func (c *ProjectsLocationsEnvironmentsWorkloadsListCall) Filter(filter string) *ProjectsLocationsEnvironmentsWorkloadsListCall {
  5254  	c.urlParams_.Set("filter", filter)
  5255  	return c
  5256  }
  5257  
  5258  // PageSize sets the optional parameter "pageSize": The maximum number of
  5259  // environments to return.
  5260  func (c *ProjectsLocationsEnvironmentsWorkloadsListCall) PageSize(pageSize int64) *ProjectsLocationsEnvironmentsWorkloadsListCall {
  5261  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  5262  	return c
  5263  }
  5264  
  5265  // PageToken sets the optional parameter "pageToken": The next_page_token value
  5266  // returned from a previous List request, if any.
  5267  func (c *ProjectsLocationsEnvironmentsWorkloadsListCall) PageToken(pageToken string) *ProjectsLocationsEnvironmentsWorkloadsListCall {
  5268  	c.urlParams_.Set("pageToken", pageToken)
  5269  	return c
  5270  }
  5271  
  5272  // Fields allows partial responses to be retrieved. See
  5273  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5274  // details.
  5275  func (c *ProjectsLocationsEnvironmentsWorkloadsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsEnvironmentsWorkloadsListCall {
  5276  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5277  	return c
  5278  }
  5279  
  5280  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  5281  // object's ETag matches the given value. This is useful for getting updates
  5282  // only after the object has changed since the last request.
  5283  func (c *ProjectsLocationsEnvironmentsWorkloadsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsEnvironmentsWorkloadsListCall {
  5284  	c.ifNoneMatch_ = entityTag
  5285  	return c
  5286  }
  5287  
  5288  // Context sets the context to be used in this call's Do method.
  5289  func (c *ProjectsLocationsEnvironmentsWorkloadsListCall) Context(ctx context.Context) *ProjectsLocationsEnvironmentsWorkloadsListCall {
  5290  	c.ctx_ = ctx
  5291  	return c
  5292  }
  5293  
  5294  // Header returns a http.Header that can be modified by the caller to add
  5295  // headers to the request.
  5296  func (c *ProjectsLocationsEnvironmentsWorkloadsListCall) Header() http.Header {
  5297  	if c.header_ == nil {
  5298  		c.header_ = make(http.Header)
  5299  	}
  5300  	return c.header_
  5301  }
  5302  
  5303  func (c *ProjectsLocationsEnvironmentsWorkloadsListCall) doRequest(alt string) (*http.Response, error) {
  5304  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  5305  	if c.ifNoneMatch_ != "" {
  5306  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  5307  	}
  5308  	var body io.Reader = nil
  5309  	c.urlParams_.Set("alt", alt)
  5310  	c.urlParams_.Set("prettyPrint", "false")
  5311  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/workloads")
  5312  	urls += "?" + c.urlParams_.Encode()
  5313  	req, err := http.NewRequest("GET", urls, body)
  5314  	if err != nil {
  5315  		return nil, err
  5316  	}
  5317  	req.Header = reqHeaders
  5318  	googleapi.Expand(req.URL, map[string]string{
  5319  		"parent": c.parent,
  5320  	})
  5321  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5322  }
  5323  
  5324  // Do executes the "composer.projects.locations.environments.workloads.list" call.
  5325  // Any non-2xx status code is an error. Response headers are in either
  5326  // *ListWorkloadsResponse.ServerResponse.Header or (if a response was returned
  5327  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  5328  // check whether the returned error was because http.StatusNotModified was
  5329  // returned.
  5330  func (c *ProjectsLocationsEnvironmentsWorkloadsListCall) Do(opts ...googleapi.CallOption) (*ListWorkloadsResponse, error) {
  5331  	gensupport.SetOptions(c.urlParams_, opts...)
  5332  	res, err := c.doRequest("json")
  5333  	if res != nil && res.StatusCode == http.StatusNotModified {
  5334  		if res.Body != nil {
  5335  			res.Body.Close()
  5336  		}
  5337  		return nil, gensupport.WrapError(&googleapi.Error{
  5338  			Code:   res.StatusCode,
  5339  			Header: res.Header,
  5340  		})
  5341  	}
  5342  	if err != nil {
  5343  		return nil, err
  5344  	}
  5345  	defer googleapi.CloseBody(res)
  5346  	if err := googleapi.CheckResponse(res); err != nil {
  5347  		return nil, gensupport.WrapError(err)
  5348  	}
  5349  	ret := &ListWorkloadsResponse{
  5350  		ServerResponse: googleapi.ServerResponse{
  5351  			Header:         res.Header,
  5352  			HTTPStatusCode: res.StatusCode,
  5353  		},
  5354  	}
  5355  	target := &ret
  5356  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5357  		return nil, err
  5358  	}
  5359  	return ret, nil
  5360  }
  5361  
  5362  // Pages invokes f for each page of results.
  5363  // A non-nil error returned from f will halt the iteration.
  5364  // The provided context supersedes any context provided to the Context method.
  5365  func (c *ProjectsLocationsEnvironmentsWorkloadsListCall) Pages(ctx context.Context, f func(*ListWorkloadsResponse) error) error {
  5366  	c.ctx_ = ctx
  5367  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  5368  	for {
  5369  		x, err := c.Do()
  5370  		if err != nil {
  5371  			return err
  5372  		}
  5373  		if err := f(x); err != nil {
  5374  			return err
  5375  		}
  5376  		if x.NextPageToken == "" {
  5377  			return nil
  5378  		}
  5379  		c.PageToken(x.NextPageToken)
  5380  	}
  5381  }
  5382  
  5383  type ProjectsLocationsImageVersionsListCall struct {
  5384  	s            *Service
  5385  	parent       string
  5386  	urlParams_   gensupport.URLParams
  5387  	ifNoneMatch_ string
  5388  	ctx_         context.Context
  5389  	header_      http.Header
  5390  }
  5391  
  5392  // List: List ImageVersions for provided location.
  5393  //
  5394  //   - parent: List ImageVersions in the given project and location, in the form:
  5395  //     "projects/{projectId}/locations/{locationId}".
  5396  func (r *ProjectsLocationsImageVersionsService) List(parent string) *ProjectsLocationsImageVersionsListCall {
  5397  	c := &ProjectsLocationsImageVersionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5398  	c.parent = parent
  5399  	return c
  5400  }
  5401  
  5402  // IncludePastReleases sets the optional parameter "includePastReleases":
  5403  // Whether or not image versions from old releases should be included.
  5404  func (c *ProjectsLocationsImageVersionsListCall) IncludePastReleases(includePastReleases bool) *ProjectsLocationsImageVersionsListCall {
  5405  	c.urlParams_.Set("includePastReleases", fmt.Sprint(includePastReleases))
  5406  	return c
  5407  }
  5408  
  5409  // PageSize sets the optional parameter "pageSize": The maximum number of
  5410  // image_versions to return.
  5411  func (c *ProjectsLocationsImageVersionsListCall) PageSize(pageSize int64) *ProjectsLocationsImageVersionsListCall {
  5412  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  5413  	return c
  5414  }
  5415  
  5416  // PageToken sets the optional parameter "pageToken": The next_page_token value
  5417  // returned from a previous List request, if any.
  5418  func (c *ProjectsLocationsImageVersionsListCall) PageToken(pageToken string) *ProjectsLocationsImageVersionsListCall {
  5419  	c.urlParams_.Set("pageToken", pageToken)
  5420  	return c
  5421  }
  5422  
  5423  // Fields allows partial responses to be retrieved. See
  5424  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5425  // details.
  5426  func (c *ProjectsLocationsImageVersionsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsImageVersionsListCall {
  5427  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5428  	return c
  5429  }
  5430  
  5431  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  5432  // object's ETag matches the given value. This is useful for getting updates
  5433  // only after the object has changed since the last request.
  5434  func (c *ProjectsLocationsImageVersionsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsImageVersionsListCall {
  5435  	c.ifNoneMatch_ = entityTag
  5436  	return c
  5437  }
  5438  
  5439  // Context sets the context to be used in this call's Do method.
  5440  func (c *ProjectsLocationsImageVersionsListCall) Context(ctx context.Context) *ProjectsLocationsImageVersionsListCall {
  5441  	c.ctx_ = ctx
  5442  	return c
  5443  }
  5444  
  5445  // Header returns a http.Header that can be modified by the caller to add
  5446  // headers to the request.
  5447  func (c *ProjectsLocationsImageVersionsListCall) Header() http.Header {
  5448  	if c.header_ == nil {
  5449  		c.header_ = make(http.Header)
  5450  	}
  5451  	return c.header_
  5452  }
  5453  
  5454  func (c *ProjectsLocationsImageVersionsListCall) doRequest(alt string) (*http.Response, error) {
  5455  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  5456  	if c.ifNoneMatch_ != "" {
  5457  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  5458  	}
  5459  	var body io.Reader = nil
  5460  	c.urlParams_.Set("alt", alt)
  5461  	c.urlParams_.Set("prettyPrint", "false")
  5462  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/imageVersions")
  5463  	urls += "?" + c.urlParams_.Encode()
  5464  	req, err := http.NewRequest("GET", urls, body)
  5465  	if err != nil {
  5466  		return nil, err
  5467  	}
  5468  	req.Header = reqHeaders
  5469  	googleapi.Expand(req.URL, map[string]string{
  5470  		"parent": c.parent,
  5471  	})
  5472  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5473  }
  5474  
  5475  // Do executes the "composer.projects.locations.imageVersions.list" call.
  5476  // Any non-2xx status code is an error. Response headers are in either
  5477  // *ListImageVersionsResponse.ServerResponse.Header or (if a response was
  5478  // returned at all) in error.(*googleapi.Error).Header. Use
  5479  // googleapi.IsNotModified to check whether the returned error was because
  5480  // http.StatusNotModified was returned.
  5481  func (c *ProjectsLocationsImageVersionsListCall) Do(opts ...googleapi.CallOption) (*ListImageVersionsResponse, error) {
  5482  	gensupport.SetOptions(c.urlParams_, opts...)
  5483  	res, err := c.doRequest("json")
  5484  	if res != nil && res.StatusCode == http.StatusNotModified {
  5485  		if res.Body != nil {
  5486  			res.Body.Close()
  5487  		}
  5488  		return nil, gensupport.WrapError(&googleapi.Error{
  5489  			Code:   res.StatusCode,
  5490  			Header: res.Header,
  5491  		})
  5492  	}
  5493  	if err != nil {
  5494  		return nil, err
  5495  	}
  5496  	defer googleapi.CloseBody(res)
  5497  	if err := googleapi.CheckResponse(res); err != nil {
  5498  		return nil, gensupport.WrapError(err)
  5499  	}
  5500  	ret := &ListImageVersionsResponse{
  5501  		ServerResponse: googleapi.ServerResponse{
  5502  			Header:         res.Header,
  5503  			HTTPStatusCode: res.StatusCode,
  5504  		},
  5505  	}
  5506  	target := &ret
  5507  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5508  		return nil, err
  5509  	}
  5510  	return ret, nil
  5511  }
  5512  
  5513  // Pages invokes f for each page of results.
  5514  // A non-nil error returned from f will halt the iteration.
  5515  // The provided context supersedes any context provided to the Context method.
  5516  func (c *ProjectsLocationsImageVersionsListCall) Pages(ctx context.Context, f func(*ListImageVersionsResponse) error) error {
  5517  	c.ctx_ = ctx
  5518  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  5519  	for {
  5520  		x, err := c.Do()
  5521  		if err != nil {
  5522  			return err
  5523  		}
  5524  		if err := f(x); err != nil {
  5525  			return err
  5526  		}
  5527  		if x.NextPageToken == "" {
  5528  			return nil
  5529  		}
  5530  		c.PageToken(x.NextPageToken)
  5531  	}
  5532  }
  5533  
  5534  type ProjectsLocationsOperationsDeleteCall struct {
  5535  	s          *Service
  5536  	name       string
  5537  	urlParams_ gensupport.URLParams
  5538  	ctx_       context.Context
  5539  	header_    http.Header
  5540  }
  5541  
  5542  // Delete: Deletes a long-running operation. This method indicates that the
  5543  // client is no longer interested in the operation result. It does not cancel
  5544  // the operation. If the server doesn't support this method, it returns
  5545  // `google.rpc.Code.UNIMPLEMENTED`.
  5546  //
  5547  // - name: The name of the operation resource to be deleted.
  5548  func (r *ProjectsLocationsOperationsService) Delete(name string) *ProjectsLocationsOperationsDeleteCall {
  5549  	c := &ProjectsLocationsOperationsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5550  	c.name = name
  5551  	return c
  5552  }
  5553  
  5554  // Fields allows partial responses to be retrieved. See
  5555  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5556  // details.
  5557  func (c *ProjectsLocationsOperationsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsDeleteCall {
  5558  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5559  	return c
  5560  }
  5561  
  5562  // Context sets the context to be used in this call's Do method.
  5563  func (c *ProjectsLocationsOperationsDeleteCall) Context(ctx context.Context) *ProjectsLocationsOperationsDeleteCall {
  5564  	c.ctx_ = ctx
  5565  	return c
  5566  }
  5567  
  5568  // Header returns a http.Header that can be modified by the caller to add
  5569  // headers to the request.
  5570  func (c *ProjectsLocationsOperationsDeleteCall) Header() http.Header {
  5571  	if c.header_ == nil {
  5572  		c.header_ = make(http.Header)
  5573  	}
  5574  	return c.header_
  5575  }
  5576  
  5577  func (c *ProjectsLocationsOperationsDeleteCall) doRequest(alt string) (*http.Response, error) {
  5578  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  5579  	var body io.Reader = nil
  5580  	c.urlParams_.Set("alt", alt)
  5581  	c.urlParams_.Set("prettyPrint", "false")
  5582  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
  5583  	urls += "?" + c.urlParams_.Encode()
  5584  	req, err := http.NewRequest("DELETE", urls, body)
  5585  	if err != nil {
  5586  		return nil, err
  5587  	}
  5588  	req.Header = reqHeaders
  5589  	googleapi.Expand(req.URL, map[string]string{
  5590  		"name": c.name,
  5591  	})
  5592  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5593  }
  5594  
  5595  // Do executes the "composer.projects.locations.operations.delete" call.
  5596  // Any non-2xx status code is an error. Response headers are in either
  5597  // *Empty.ServerResponse.Header or (if a response was returned at all) in
  5598  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  5599  // whether the returned error was because http.StatusNotModified was returned.
  5600  func (c *ProjectsLocationsOperationsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
  5601  	gensupport.SetOptions(c.urlParams_, opts...)
  5602  	res, err := c.doRequest("json")
  5603  	if res != nil && res.StatusCode == http.StatusNotModified {
  5604  		if res.Body != nil {
  5605  			res.Body.Close()
  5606  		}
  5607  		return nil, gensupport.WrapError(&googleapi.Error{
  5608  			Code:   res.StatusCode,
  5609  			Header: res.Header,
  5610  		})
  5611  	}
  5612  	if err != nil {
  5613  		return nil, err
  5614  	}
  5615  	defer googleapi.CloseBody(res)
  5616  	if err := googleapi.CheckResponse(res); err != nil {
  5617  		return nil, gensupport.WrapError(err)
  5618  	}
  5619  	ret := &Empty{
  5620  		ServerResponse: googleapi.ServerResponse{
  5621  			Header:         res.Header,
  5622  			HTTPStatusCode: res.StatusCode,
  5623  		},
  5624  	}
  5625  	target := &ret
  5626  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5627  		return nil, err
  5628  	}
  5629  	return ret, nil
  5630  }
  5631  
  5632  type ProjectsLocationsOperationsGetCall struct {
  5633  	s            *Service
  5634  	name         string
  5635  	urlParams_   gensupport.URLParams
  5636  	ifNoneMatch_ string
  5637  	ctx_         context.Context
  5638  	header_      http.Header
  5639  }
  5640  
  5641  // Get: Gets the latest state of a long-running operation. Clients can use this
  5642  // method to poll the operation result at intervals as recommended by the API
  5643  // service.
  5644  //
  5645  // - name: The name of the operation resource.
  5646  func (r *ProjectsLocationsOperationsService) Get(name string) *ProjectsLocationsOperationsGetCall {
  5647  	c := &ProjectsLocationsOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5648  	c.name = name
  5649  	return c
  5650  }
  5651  
  5652  // Fields allows partial responses to be retrieved. See
  5653  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5654  // details.
  5655  func (c *ProjectsLocationsOperationsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsGetCall {
  5656  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5657  	return c
  5658  }
  5659  
  5660  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  5661  // object's ETag matches the given value. This is useful for getting updates
  5662  // only after the object has changed since the last request.
  5663  func (c *ProjectsLocationsOperationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsOperationsGetCall {
  5664  	c.ifNoneMatch_ = entityTag
  5665  	return c
  5666  }
  5667  
  5668  // Context sets the context to be used in this call's Do method.
  5669  func (c *ProjectsLocationsOperationsGetCall) Context(ctx context.Context) *ProjectsLocationsOperationsGetCall {
  5670  	c.ctx_ = ctx
  5671  	return c
  5672  }
  5673  
  5674  // Header returns a http.Header that can be modified by the caller to add
  5675  // headers to the request.
  5676  func (c *ProjectsLocationsOperationsGetCall) Header() http.Header {
  5677  	if c.header_ == nil {
  5678  		c.header_ = make(http.Header)
  5679  	}
  5680  	return c.header_
  5681  }
  5682  
  5683  func (c *ProjectsLocationsOperationsGetCall) doRequest(alt string) (*http.Response, error) {
  5684  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  5685  	if c.ifNoneMatch_ != "" {
  5686  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  5687  	}
  5688  	var body io.Reader = nil
  5689  	c.urlParams_.Set("alt", alt)
  5690  	c.urlParams_.Set("prettyPrint", "false")
  5691  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
  5692  	urls += "?" + c.urlParams_.Encode()
  5693  	req, err := http.NewRequest("GET", urls, body)
  5694  	if err != nil {
  5695  		return nil, err
  5696  	}
  5697  	req.Header = reqHeaders
  5698  	googleapi.Expand(req.URL, map[string]string{
  5699  		"name": c.name,
  5700  	})
  5701  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5702  }
  5703  
  5704  // Do executes the "composer.projects.locations.operations.get" call.
  5705  // Any non-2xx status code is an error. Response headers are in either
  5706  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  5707  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  5708  // whether the returned error was because http.StatusNotModified was returned.
  5709  func (c *ProjectsLocationsOperationsGetCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  5710  	gensupport.SetOptions(c.urlParams_, opts...)
  5711  	res, err := c.doRequest("json")
  5712  	if res != nil && res.StatusCode == http.StatusNotModified {
  5713  		if res.Body != nil {
  5714  			res.Body.Close()
  5715  		}
  5716  		return nil, gensupport.WrapError(&googleapi.Error{
  5717  			Code:   res.StatusCode,
  5718  			Header: res.Header,
  5719  		})
  5720  	}
  5721  	if err != nil {
  5722  		return nil, err
  5723  	}
  5724  	defer googleapi.CloseBody(res)
  5725  	if err := googleapi.CheckResponse(res); err != nil {
  5726  		return nil, gensupport.WrapError(err)
  5727  	}
  5728  	ret := &Operation{
  5729  		ServerResponse: googleapi.ServerResponse{
  5730  			Header:         res.Header,
  5731  			HTTPStatusCode: res.StatusCode,
  5732  		},
  5733  	}
  5734  	target := &ret
  5735  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5736  		return nil, err
  5737  	}
  5738  	return ret, nil
  5739  }
  5740  
  5741  type ProjectsLocationsOperationsListCall struct {
  5742  	s            *Service
  5743  	name         string
  5744  	urlParams_   gensupport.URLParams
  5745  	ifNoneMatch_ string
  5746  	ctx_         context.Context
  5747  	header_      http.Header
  5748  }
  5749  
  5750  // List: Lists operations that match the specified filter in the request. If
  5751  // the server doesn't support this method, it returns `UNIMPLEMENTED`.
  5752  //
  5753  // - name: The name of the operation's parent resource.
  5754  func (r *ProjectsLocationsOperationsService) List(name string) *ProjectsLocationsOperationsListCall {
  5755  	c := &ProjectsLocationsOperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5756  	c.name = name
  5757  	return c
  5758  }
  5759  
  5760  // Filter sets the optional parameter "filter": The standard list filter.
  5761  func (c *ProjectsLocationsOperationsListCall) Filter(filter string) *ProjectsLocationsOperationsListCall {
  5762  	c.urlParams_.Set("filter", filter)
  5763  	return c
  5764  }
  5765  
  5766  // PageSize sets the optional parameter "pageSize": The standard list page
  5767  // size.
  5768  func (c *ProjectsLocationsOperationsListCall) PageSize(pageSize int64) *ProjectsLocationsOperationsListCall {
  5769  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  5770  	return c
  5771  }
  5772  
  5773  // PageToken sets the optional parameter "pageToken": The standard list page
  5774  // token.
  5775  func (c *ProjectsLocationsOperationsListCall) PageToken(pageToken string) *ProjectsLocationsOperationsListCall {
  5776  	c.urlParams_.Set("pageToken", pageToken)
  5777  	return c
  5778  }
  5779  
  5780  // Fields allows partial responses to be retrieved. See
  5781  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5782  // details.
  5783  func (c *ProjectsLocationsOperationsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsListCall {
  5784  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5785  	return c
  5786  }
  5787  
  5788  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  5789  // object's ETag matches the given value. This is useful for getting updates
  5790  // only after the object has changed since the last request.
  5791  func (c *ProjectsLocationsOperationsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsOperationsListCall {
  5792  	c.ifNoneMatch_ = entityTag
  5793  	return c
  5794  }
  5795  
  5796  // Context sets the context to be used in this call's Do method.
  5797  func (c *ProjectsLocationsOperationsListCall) Context(ctx context.Context) *ProjectsLocationsOperationsListCall {
  5798  	c.ctx_ = ctx
  5799  	return c
  5800  }
  5801  
  5802  // Header returns a http.Header that can be modified by the caller to add
  5803  // headers to the request.
  5804  func (c *ProjectsLocationsOperationsListCall) Header() http.Header {
  5805  	if c.header_ == nil {
  5806  		c.header_ = make(http.Header)
  5807  	}
  5808  	return c.header_
  5809  }
  5810  
  5811  func (c *ProjectsLocationsOperationsListCall) doRequest(alt string) (*http.Response, error) {
  5812  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  5813  	if c.ifNoneMatch_ != "" {
  5814  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  5815  	}
  5816  	var body io.Reader = nil
  5817  	c.urlParams_.Set("alt", alt)
  5818  	c.urlParams_.Set("prettyPrint", "false")
  5819  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}/operations")
  5820  	urls += "?" + c.urlParams_.Encode()
  5821  	req, err := http.NewRequest("GET", urls, body)
  5822  	if err != nil {
  5823  		return nil, err
  5824  	}
  5825  	req.Header = reqHeaders
  5826  	googleapi.Expand(req.URL, map[string]string{
  5827  		"name": c.name,
  5828  	})
  5829  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5830  }
  5831  
  5832  // Do executes the "composer.projects.locations.operations.list" call.
  5833  // Any non-2xx status code is an error. Response headers are in either
  5834  // *ListOperationsResponse.ServerResponse.Header or (if a response was returned
  5835  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  5836  // check whether the returned error was because http.StatusNotModified was
  5837  // returned.
  5838  func (c *ProjectsLocationsOperationsListCall) Do(opts ...googleapi.CallOption) (*ListOperationsResponse, error) {
  5839  	gensupport.SetOptions(c.urlParams_, opts...)
  5840  	res, err := c.doRequest("json")
  5841  	if res != nil && res.StatusCode == http.StatusNotModified {
  5842  		if res.Body != nil {
  5843  			res.Body.Close()
  5844  		}
  5845  		return nil, gensupport.WrapError(&googleapi.Error{
  5846  			Code:   res.StatusCode,
  5847  			Header: res.Header,
  5848  		})
  5849  	}
  5850  	if err != nil {
  5851  		return nil, err
  5852  	}
  5853  	defer googleapi.CloseBody(res)
  5854  	if err := googleapi.CheckResponse(res); err != nil {
  5855  		return nil, gensupport.WrapError(err)
  5856  	}
  5857  	ret := &ListOperationsResponse{
  5858  		ServerResponse: googleapi.ServerResponse{
  5859  			Header:         res.Header,
  5860  			HTTPStatusCode: res.StatusCode,
  5861  		},
  5862  	}
  5863  	target := &ret
  5864  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5865  		return nil, err
  5866  	}
  5867  	return ret, nil
  5868  }
  5869  
  5870  // Pages invokes f for each page of results.
  5871  // A non-nil error returned from f will halt the iteration.
  5872  // The provided context supersedes any context provided to the Context method.
  5873  func (c *ProjectsLocationsOperationsListCall) Pages(ctx context.Context, f func(*ListOperationsResponse) error) error {
  5874  	c.ctx_ = ctx
  5875  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  5876  	for {
  5877  		x, err := c.Do()
  5878  		if err != nil {
  5879  			return err
  5880  		}
  5881  		if err := f(x); err != nil {
  5882  			return err
  5883  		}
  5884  		if x.NextPageToken == "" {
  5885  			return nil
  5886  		}
  5887  		c.PageToken(x.NextPageToken)
  5888  	}
  5889  }
  5890  

View as plain text