...

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

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

     1  // Copyright 2024 Google LLC.
     2  // Use of this source code is governed by a BSD-style
     3  // license that can be found in the LICENSE file.
     4  
     5  // Code generated file. DO NOT EDIT.
     6  
     7  // Package networksecurity provides access to the Network Security API.
     8  //
     9  // For product documentation, see: https://cloud.google.com/networking
    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/networksecurity/v1"
    27  //	...
    28  //	ctx := context.Background()
    29  //	networksecurityService, err := networksecurity.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  //	networksecurityService, err := networksecurity.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  //	networksecurityService, err := networksecurity.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))
    49  //
    50  // See [google.golang.org/api/option.ClientOption] for details on options.
    51  package networksecurity // import "google.golang.org/api/networksecurity/v1"
    52  
    53  import (
    54  	"bytes"
    55  	"context"
    56  	"encoding/json"
    57  	"errors"
    58  	"fmt"
    59  	"io"
    60  	"net/http"
    61  	"net/url"
    62  	"strconv"
    63  	"strings"
    64  
    65  	googleapi "google.golang.org/api/googleapi"
    66  	internal "google.golang.org/api/internal"
    67  	gensupport "google.golang.org/api/internal/gensupport"
    68  	option "google.golang.org/api/option"
    69  	internaloption "google.golang.org/api/option/internaloption"
    70  	htransport "google.golang.org/api/transport/http"
    71  )
    72  
    73  // Always reference these packages, just in case the auto-generated code
    74  // below doesn't.
    75  var _ = bytes.NewBuffer
    76  var _ = strconv.Itoa
    77  var _ = fmt.Sprintf
    78  var _ = json.NewDecoder
    79  var _ = io.Copy
    80  var _ = url.Parse
    81  var _ = gensupport.MarshalJSON
    82  var _ = googleapi.Version
    83  var _ = errors.New
    84  var _ = strings.Replace
    85  var _ = context.Canceled
    86  var _ = internaloption.WithDefaultEndpoint
    87  var _ = internal.Version
    88  
    89  const apiId = "networksecurity:v1"
    90  const apiName = "networksecurity"
    91  const apiVersion = "v1"
    92  const basePath = "https://networksecurity.googleapis.com/"
    93  const basePathTemplate = "https://networksecurity.UNIVERSE_DOMAIN/"
    94  const mtlsBasePath = "https://networksecurity.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.Organizations = NewOrganizationsService(s)
   139  	s.Projects = NewProjectsService(s)
   140  	return s, nil
   141  }
   142  
   143  type Service struct {
   144  	client    *http.Client
   145  	BasePath  string // API endpoint base URL
   146  	UserAgent string // optional additional User-Agent fragment
   147  
   148  	Organizations *OrganizationsService
   149  
   150  	Projects *ProjectsService
   151  }
   152  
   153  func (s *Service) userAgent() string {
   154  	if s.UserAgent == "" {
   155  		return googleapi.UserAgent
   156  	}
   157  	return googleapi.UserAgent + " " + s.UserAgent
   158  }
   159  
   160  func NewOrganizationsService(s *Service) *OrganizationsService {
   161  	rs := &OrganizationsService{s: s}
   162  	rs.Locations = NewOrganizationsLocationsService(s)
   163  	return rs
   164  }
   165  
   166  type OrganizationsService struct {
   167  	s *Service
   168  
   169  	Locations *OrganizationsLocationsService
   170  }
   171  
   172  func NewOrganizationsLocationsService(s *Service) *OrganizationsLocationsService {
   173  	rs := &OrganizationsLocationsService{s: s}
   174  	rs.AddressGroups = NewOrganizationsLocationsAddressGroupsService(s)
   175  	rs.FirewallEndpoints = NewOrganizationsLocationsFirewallEndpointsService(s)
   176  	rs.Operations = NewOrganizationsLocationsOperationsService(s)
   177  	rs.SecurityProfileGroups = NewOrganizationsLocationsSecurityProfileGroupsService(s)
   178  	rs.SecurityProfiles = NewOrganizationsLocationsSecurityProfilesService(s)
   179  	return rs
   180  }
   181  
   182  type OrganizationsLocationsService struct {
   183  	s *Service
   184  
   185  	AddressGroups *OrganizationsLocationsAddressGroupsService
   186  
   187  	FirewallEndpoints *OrganizationsLocationsFirewallEndpointsService
   188  
   189  	Operations *OrganizationsLocationsOperationsService
   190  
   191  	SecurityProfileGroups *OrganizationsLocationsSecurityProfileGroupsService
   192  
   193  	SecurityProfiles *OrganizationsLocationsSecurityProfilesService
   194  }
   195  
   196  func NewOrganizationsLocationsAddressGroupsService(s *Service) *OrganizationsLocationsAddressGroupsService {
   197  	rs := &OrganizationsLocationsAddressGroupsService{s: s}
   198  	return rs
   199  }
   200  
   201  type OrganizationsLocationsAddressGroupsService struct {
   202  	s *Service
   203  }
   204  
   205  func NewOrganizationsLocationsFirewallEndpointsService(s *Service) *OrganizationsLocationsFirewallEndpointsService {
   206  	rs := &OrganizationsLocationsFirewallEndpointsService{s: s}
   207  	return rs
   208  }
   209  
   210  type OrganizationsLocationsFirewallEndpointsService struct {
   211  	s *Service
   212  }
   213  
   214  func NewOrganizationsLocationsOperationsService(s *Service) *OrganizationsLocationsOperationsService {
   215  	rs := &OrganizationsLocationsOperationsService{s: s}
   216  	return rs
   217  }
   218  
   219  type OrganizationsLocationsOperationsService struct {
   220  	s *Service
   221  }
   222  
   223  func NewOrganizationsLocationsSecurityProfileGroupsService(s *Service) *OrganizationsLocationsSecurityProfileGroupsService {
   224  	rs := &OrganizationsLocationsSecurityProfileGroupsService{s: s}
   225  	return rs
   226  }
   227  
   228  type OrganizationsLocationsSecurityProfileGroupsService struct {
   229  	s *Service
   230  }
   231  
   232  func NewOrganizationsLocationsSecurityProfilesService(s *Service) *OrganizationsLocationsSecurityProfilesService {
   233  	rs := &OrganizationsLocationsSecurityProfilesService{s: s}
   234  	return rs
   235  }
   236  
   237  type OrganizationsLocationsSecurityProfilesService struct {
   238  	s *Service
   239  }
   240  
   241  func NewProjectsService(s *Service) *ProjectsService {
   242  	rs := &ProjectsService{s: s}
   243  	rs.Locations = NewProjectsLocationsService(s)
   244  	return rs
   245  }
   246  
   247  type ProjectsService struct {
   248  	s *Service
   249  
   250  	Locations *ProjectsLocationsService
   251  }
   252  
   253  func NewProjectsLocationsService(s *Service) *ProjectsLocationsService {
   254  	rs := &ProjectsLocationsService{s: s}
   255  	rs.AddressGroups = NewProjectsLocationsAddressGroupsService(s)
   256  	rs.AuthorizationPolicies = NewProjectsLocationsAuthorizationPoliciesService(s)
   257  	rs.ClientTlsPolicies = NewProjectsLocationsClientTlsPoliciesService(s)
   258  	rs.FirewallEndpointAssociations = NewProjectsLocationsFirewallEndpointAssociationsService(s)
   259  	rs.GatewaySecurityPolicies = NewProjectsLocationsGatewaySecurityPoliciesService(s)
   260  	rs.Operations = NewProjectsLocationsOperationsService(s)
   261  	rs.ServerTlsPolicies = NewProjectsLocationsServerTlsPoliciesService(s)
   262  	rs.TlsInspectionPolicies = NewProjectsLocationsTlsInspectionPoliciesService(s)
   263  	rs.UrlLists = NewProjectsLocationsUrlListsService(s)
   264  	return rs
   265  }
   266  
   267  type ProjectsLocationsService struct {
   268  	s *Service
   269  
   270  	AddressGroups *ProjectsLocationsAddressGroupsService
   271  
   272  	AuthorizationPolicies *ProjectsLocationsAuthorizationPoliciesService
   273  
   274  	ClientTlsPolicies *ProjectsLocationsClientTlsPoliciesService
   275  
   276  	FirewallEndpointAssociations *ProjectsLocationsFirewallEndpointAssociationsService
   277  
   278  	GatewaySecurityPolicies *ProjectsLocationsGatewaySecurityPoliciesService
   279  
   280  	Operations *ProjectsLocationsOperationsService
   281  
   282  	ServerTlsPolicies *ProjectsLocationsServerTlsPoliciesService
   283  
   284  	TlsInspectionPolicies *ProjectsLocationsTlsInspectionPoliciesService
   285  
   286  	UrlLists *ProjectsLocationsUrlListsService
   287  }
   288  
   289  func NewProjectsLocationsAddressGroupsService(s *Service) *ProjectsLocationsAddressGroupsService {
   290  	rs := &ProjectsLocationsAddressGroupsService{s: s}
   291  	return rs
   292  }
   293  
   294  type ProjectsLocationsAddressGroupsService struct {
   295  	s *Service
   296  }
   297  
   298  func NewProjectsLocationsAuthorizationPoliciesService(s *Service) *ProjectsLocationsAuthorizationPoliciesService {
   299  	rs := &ProjectsLocationsAuthorizationPoliciesService{s: s}
   300  	return rs
   301  }
   302  
   303  type ProjectsLocationsAuthorizationPoliciesService struct {
   304  	s *Service
   305  }
   306  
   307  func NewProjectsLocationsClientTlsPoliciesService(s *Service) *ProjectsLocationsClientTlsPoliciesService {
   308  	rs := &ProjectsLocationsClientTlsPoliciesService{s: s}
   309  	return rs
   310  }
   311  
   312  type ProjectsLocationsClientTlsPoliciesService struct {
   313  	s *Service
   314  }
   315  
   316  func NewProjectsLocationsFirewallEndpointAssociationsService(s *Service) *ProjectsLocationsFirewallEndpointAssociationsService {
   317  	rs := &ProjectsLocationsFirewallEndpointAssociationsService{s: s}
   318  	return rs
   319  }
   320  
   321  type ProjectsLocationsFirewallEndpointAssociationsService struct {
   322  	s *Service
   323  }
   324  
   325  func NewProjectsLocationsGatewaySecurityPoliciesService(s *Service) *ProjectsLocationsGatewaySecurityPoliciesService {
   326  	rs := &ProjectsLocationsGatewaySecurityPoliciesService{s: s}
   327  	rs.Rules = NewProjectsLocationsGatewaySecurityPoliciesRulesService(s)
   328  	return rs
   329  }
   330  
   331  type ProjectsLocationsGatewaySecurityPoliciesService struct {
   332  	s *Service
   333  
   334  	Rules *ProjectsLocationsGatewaySecurityPoliciesRulesService
   335  }
   336  
   337  func NewProjectsLocationsGatewaySecurityPoliciesRulesService(s *Service) *ProjectsLocationsGatewaySecurityPoliciesRulesService {
   338  	rs := &ProjectsLocationsGatewaySecurityPoliciesRulesService{s: s}
   339  	return rs
   340  }
   341  
   342  type ProjectsLocationsGatewaySecurityPoliciesRulesService struct {
   343  	s *Service
   344  }
   345  
   346  func NewProjectsLocationsOperationsService(s *Service) *ProjectsLocationsOperationsService {
   347  	rs := &ProjectsLocationsOperationsService{s: s}
   348  	return rs
   349  }
   350  
   351  type ProjectsLocationsOperationsService struct {
   352  	s *Service
   353  }
   354  
   355  func NewProjectsLocationsServerTlsPoliciesService(s *Service) *ProjectsLocationsServerTlsPoliciesService {
   356  	rs := &ProjectsLocationsServerTlsPoliciesService{s: s}
   357  	return rs
   358  }
   359  
   360  type ProjectsLocationsServerTlsPoliciesService struct {
   361  	s *Service
   362  }
   363  
   364  func NewProjectsLocationsTlsInspectionPoliciesService(s *Service) *ProjectsLocationsTlsInspectionPoliciesService {
   365  	rs := &ProjectsLocationsTlsInspectionPoliciesService{s: s}
   366  	return rs
   367  }
   368  
   369  type ProjectsLocationsTlsInspectionPoliciesService struct {
   370  	s *Service
   371  }
   372  
   373  func NewProjectsLocationsUrlListsService(s *Service) *ProjectsLocationsUrlListsService {
   374  	rs := &ProjectsLocationsUrlListsService{s: s}
   375  	return rs
   376  }
   377  
   378  type ProjectsLocationsUrlListsService struct {
   379  	s *Service
   380  }
   381  
   382  // AddAddressGroupItemsRequest: Request used by the AddAddressGroupItems
   383  // method.
   384  type AddAddressGroupItemsRequest struct {
   385  	// Items: Required. List of items to add.
   386  	Items []string `json:"items,omitempty"`
   387  	// RequestId: Optional. An optional request ID to identify requests. Specify a
   388  	// unique request ID so that if you must retry your request, the server will
   389  	// know to ignore the request if it has already been completed. The server will
   390  	// guarantee that for at least 60 minutes since the first request. For example,
   391  	// consider a situation where you make an initial request and the request times
   392  	// out. If you make the request again with the same request ID, the server can
   393  	// check if original operation with the same request ID was received, and if
   394  	// so, will ignore the second request. This prevents clients from accidentally
   395  	// creating duplicate commitments. The request ID must be a valid UUID with the
   396  	// exception that zero UUID is not supported
   397  	// (00000000-0000-0000-0000-000000000000).
   398  	RequestId string `json:"requestId,omitempty"`
   399  	// ForceSendFields is a list of field names (e.g. "Items") to unconditionally
   400  	// include in API requests. By default, fields with empty or default values are
   401  	// omitted from API requests. See
   402  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   403  	// details.
   404  	ForceSendFields []string `json:"-"`
   405  	// NullFields is a list of field names (e.g. "Items") to include in API
   406  	// requests with the JSON null value. By default, fields with empty values are
   407  	// omitted from API requests. See
   408  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   409  	NullFields []string `json:"-"`
   410  }
   411  
   412  func (s *AddAddressGroupItemsRequest) MarshalJSON() ([]byte, error) {
   413  	type NoMethod AddAddressGroupItemsRequest
   414  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   415  }
   416  
   417  // AddressGroup: AddressGroup is a resource that specifies how a collection of
   418  // IP/DNS used in Firewall Policy.
   419  type AddressGroup struct {
   420  	// Capacity: Required. Capacity of the Address Group
   421  	Capacity int64 `json:"capacity,omitempty"`
   422  	// CreateTime: Output only. The timestamp when the resource was created.
   423  	CreateTime string `json:"createTime,omitempty"`
   424  	// Description: Optional. Free-text description of the resource.
   425  	Description string `json:"description,omitempty"`
   426  	// Items: Optional. List of items.
   427  	Items []string `json:"items,omitempty"`
   428  	// Labels: Optional. Set of label tags associated with the AddressGroup
   429  	// resource.
   430  	Labels map[string]string `json:"labels,omitempty"`
   431  	// Name: Required. Name of the AddressGroup resource. It matches pattern
   432  	// `projects/*/locations/{location}/addressGroups/`.
   433  	Name string `json:"name,omitempty"`
   434  	// SelfLink: Output only. Server-defined fully-qualified URL for this resource.
   435  	SelfLink string `json:"selfLink,omitempty"`
   436  	// Type: Required. The type of the Address Group. Possible values are "IPv4" or
   437  	// "IPV6".
   438  	//
   439  	// Possible values:
   440  	//   "TYPE_UNSPECIFIED" - Default value.
   441  	//   "IPV4" - IP v4 ranges.
   442  	//   "IPV6" - IP v6 ranges.
   443  	Type string `json:"type,omitempty"`
   444  	// UpdateTime: Output only. The timestamp when the resource was updated.
   445  	UpdateTime string `json:"updateTime,omitempty"`
   446  
   447  	// ServerResponse contains the HTTP response code and headers from the server.
   448  	googleapi.ServerResponse `json:"-"`
   449  	// ForceSendFields is a list of field names (e.g. "Capacity") to
   450  	// unconditionally include in API requests. By default, fields with empty or
   451  	// default values are omitted from API requests. See
   452  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   453  	// details.
   454  	ForceSendFields []string `json:"-"`
   455  	// NullFields is a list of field names (e.g. "Capacity") to include in API
   456  	// requests with the JSON null value. By default, fields with empty values are
   457  	// omitted from API requests. See
   458  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   459  	NullFields []string `json:"-"`
   460  }
   461  
   462  func (s *AddressGroup) MarshalJSON() ([]byte, error) {
   463  	type NoMethod AddressGroup
   464  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   465  }
   466  
   467  // AuthorizationPolicy: AuthorizationPolicy is a resource that specifies how a
   468  // server should authorize incoming connections. This resource in itself does
   469  // not change the configuration unless it's attached to a target https proxy or
   470  // endpoint config selector resource.
   471  type AuthorizationPolicy struct {
   472  	// Action: Required. The action to take when a rule match is found. Possible
   473  	// values are "ALLOW" or "DENY".
   474  	//
   475  	// Possible values:
   476  	//   "ACTION_UNSPECIFIED" - Default value.
   477  	//   "ALLOW" - Grant access.
   478  	//   "DENY" - Deny access. Deny rules should be avoided unless they are used to
   479  	// provide a default "deny all" fallback.
   480  	Action string `json:"action,omitempty"`
   481  	// CreateTime: Output only. The timestamp when the resource was created.
   482  	CreateTime string `json:"createTime,omitempty"`
   483  	// Description: Optional. Free-text description of the resource.
   484  	Description string `json:"description,omitempty"`
   485  	// Labels: Optional. Set of label tags associated with the AuthorizationPolicy
   486  	// resource.
   487  	Labels map[string]string `json:"labels,omitempty"`
   488  	// Name: Required. Name of the AuthorizationPolicy resource. It matches pattern
   489  	// `projects/{project}/locations/{location}/authorizationPolicies/`.
   490  	Name string `json:"name,omitempty"`
   491  	// Rules: Optional. List of rules to match. Note that at least one of the rules
   492  	// must match in order for the action specified in the 'action' field to be
   493  	// taken. A rule is a match if there is a matching source and destination. If
   494  	// left blank, the action specified in the `action` field will be applied on
   495  	// every request.
   496  	Rules []*Rule `json:"rules,omitempty"`
   497  	// UpdateTime: Output only. The timestamp when the resource was updated.
   498  	UpdateTime string `json:"updateTime,omitempty"`
   499  
   500  	// ServerResponse contains the HTTP response code and headers from the server.
   501  	googleapi.ServerResponse `json:"-"`
   502  	// ForceSendFields is a list of field names (e.g. "Action") to unconditionally
   503  	// include in API requests. By default, fields with empty or default values are
   504  	// omitted from API requests. See
   505  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   506  	// details.
   507  	ForceSendFields []string `json:"-"`
   508  	// NullFields is a list of field names (e.g. "Action") to include in API
   509  	// requests with the JSON null value. By default, fields with empty values are
   510  	// omitted from API requests. See
   511  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   512  	NullFields []string `json:"-"`
   513  }
   514  
   515  func (s *AuthorizationPolicy) MarshalJSON() ([]byte, error) {
   516  	type NoMethod AuthorizationPolicy
   517  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   518  }
   519  
   520  // CancelOperationRequest: The request message for Operations.CancelOperation.
   521  type CancelOperationRequest struct {
   522  }
   523  
   524  // CertificateProviderInstance: Specification of a TLS certificate provider
   525  // instance. Workloads may have one or more CertificateProvider instances
   526  // (plugins) and one of them is enabled and configured by specifying this
   527  // message. Workloads use the values from this message to locate and load the
   528  // CertificateProvider instance configuration.
   529  type CertificateProviderInstance struct {
   530  	// PluginInstance: Required. Plugin instance name, used to locate and load
   531  	// CertificateProvider instance configuration. Set to
   532  	// "google_cloud_private_spiffe" to use Certificate Authority Service
   533  	// certificate provider instance.
   534  	PluginInstance string `json:"pluginInstance,omitempty"`
   535  	// ForceSendFields is a list of field names (e.g. "PluginInstance") to
   536  	// unconditionally include in API requests. By default, fields with empty or
   537  	// default values are omitted from API requests. See
   538  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   539  	// details.
   540  	ForceSendFields []string `json:"-"`
   541  	// NullFields is a list of field names (e.g. "PluginInstance") to include in
   542  	// API requests with the JSON null value. By default, fields with empty values
   543  	// are omitted from API requests. See
   544  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   545  	NullFields []string `json:"-"`
   546  }
   547  
   548  func (s *CertificateProviderInstance) MarshalJSON() ([]byte, error) {
   549  	type NoMethod CertificateProviderInstance
   550  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   551  }
   552  
   553  // ClientTlsPolicy: ClientTlsPolicy is a resource that specifies how a client
   554  // should authenticate connections to backends of a service. This resource
   555  // itself does not affect configuration unless it is attached to a backend
   556  // service resource.
   557  type ClientTlsPolicy struct {
   558  	// ClientCertificate: Optional. Defines a mechanism to provision client
   559  	// identity (public and private keys) for peer to peer authentication. The
   560  	// presence of this dictates mTLS.
   561  	ClientCertificate *GoogleCloudNetworksecurityV1CertificateProvider `json:"clientCertificate,omitempty"`
   562  	// CreateTime: Output only. The timestamp when the resource was created.
   563  	CreateTime string `json:"createTime,omitempty"`
   564  	// Description: Optional. Free-text description of the resource.
   565  	Description string `json:"description,omitempty"`
   566  	// Labels: Optional. Set of label tags associated with the resource.
   567  	Labels map[string]string `json:"labels,omitempty"`
   568  	// Name: Required. Name of the ClientTlsPolicy resource. It matches the pattern
   569  	// `projects/*/locations/{location}/clientTlsPolicies/{client_tls_policy}`
   570  	Name string `json:"name,omitempty"`
   571  	// ServerValidationCa: Optional. Defines the mechanism to obtain the
   572  	// Certificate Authority certificate to validate the server certificate. If
   573  	// empty, client does not validate the server certificate.
   574  	ServerValidationCa []*ValidationCA `json:"serverValidationCa,omitempty"`
   575  	// Sni: Optional. Server Name Indication string to present to the server during
   576  	// TLS handshake. E.g: "secure.example.com".
   577  	Sni string `json:"sni,omitempty"`
   578  	// UpdateTime: Output only. The timestamp when the resource was updated.
   579  	UpdateTime string `json:"updateTime,omitempty"`
   580  
   581  	// ServerResponse contains the HTTP response code and headers from the server.
   582  	googleapi.ServerResponse `json:"-"`
   583  	// ForceSendFields is a list of field names (e.g. "ClientCertificate") to
   584  	// unconditionally include in API requests. By default, fields with empty or
   585  	// default values are omitted from API requests. See
   586  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   587  	// details.
   588  	ForceSendFields []string `json:"-"`
   589  	// NullFields is a list of field names (e.g. "ClientCertificate") to include in
   590  	// API requests with the JSON null value. By default, fields with empty values
   591  	// are omitted from API requests. See
   592  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   593  	NullFields []string `json:"-"`
   594  }
   595  
   596  func (s *ClientTlsPolicy) MarshalJSON() ([]byte, error) {
   597  	type NoMethod ClientTlsPolicy
   598  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   599  }
   600  
   601  // CloneAddressGroupItemsRequest: Request used by the CloneAddressGroupItems
   602  // method.
   603  type CloneAddressGroupItemsRequest struct {
   604  	// RequestId: Optional. An optional request ID to identify requests. Specify a
   605  	// unique request ID so that if you must retry your request, the server will
   606  	// know to ignore the request if it has already been completed. The server will
   607  	// guarantee that for at least 60 minutes since the first request. For example,
   608  	// consider a situation where you make an initial request and the request times
   609  	// out. If you make the request again with the same request ID, the server can
   610  	// check if original operation with the same request ID was received, and if
   611  	// so, will ignore the second request. This prevents clients from accidentally
   612  	// creating duplicate commitments. The request ID must be a valid UUID with the
   613  	// exception that zero UUID is not supported
   614  	// (00000000-0000-0000-0000-000000000000).
   615  	RequestId string `json:"requestId,omitempty"`
   616  	// SourceAddressGroup: Required. Source address group to clone items from.
   617  	SourceAddressGroup string `json:"sourceAddressGroup,omitempty"`
   618  	// ForceSendFields is a list of field names (e.g. "RequestId") to
   619  	// unconditionally include in API requests. By default, fields with empty or
   620  	// default values are omitted from API requests. See
   621  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   622  	// details.
   623  	ForceSendFields []string `json:"-"`
   624  	// NullFields is a list of field names (e.g. "RequestId") to include in API
   625  	// requests with the JSON null value. By default, fields with empty values are
   626  	// omitted from API requests. See
   627  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   628  	NullFields []string `json:"-"`
   629  }
   630  
   631  func (s *CloneAddressGroupItemsRequest) MarshalJSON() ([]byte, error) {
   632  	type NoMethod CloneAddressGroupItemsRequest
   633  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   634  }
   635  
   636  // Destination: Specification of traffic destination attributes.
   637  type Destination struct {
   638  	// Hosts: Required. List of host names to match. Matched against the
   639  	// ":authority" header in http requests. At least one host should match. Each
   640  	// host can be an exact match, or a prefix match (example "mydomain.*") or a
   641  	// suffix match (example "*.myorg.com") or a presence (any) match "*".
   642  	Hosts []string `json:"hosts,omitempty"`
   643  	// HttpHeaderMatch: Optional. Match against key:value pair in http header.
   644  	// Provides a flexible match based on HTTP headers, for potentially advanced
   645  	// use cases. At least one header should match. Avoid using header matches to
   646  	// make authorization decisions unless there is a strong guarantee that
   647  	// requests arrive through a trusted client or proxy.
   648  	HttpHeaderMatch *HttpHeaderMatch `json:"httpHeaderMatch,omitempty"`
   649  	// Methods: Optional. A list of HTTP methods to match. At least one method
   650  	// should match. Should not be set for gRPC services.
   651  	Methods []string `json:"methods,omitempty"`
   652  	// Ports: Required. List of destination ports to match. At least one port
   653  	// should match.
   654  	Ports []int64 `json:"ports,omitempty"`
   655  	// ForceSendFields is a list of field names (e.g. "Hosts") to unconditionally
   656  	// include in API requests. By default, fields with empty or default values are
   657  	// omitted from API requests. See
   658  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   659  	// details.
   660  	ForceSendFields []string `json:"-"`
   661  	// NullFields is a list of field names (e.g. "Hosts") to include in API
   662  	// requests with the JSON null value. By default, fields with empty values are
   663  	// omitted from API requests. See
   664  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   665  	NullFields []string `json:"-"`
   666  }
   667  
   668  func (s *Destination) MarshalJSON() ([]byte, error) {
   669  	type NoMethod Destination
   670  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   671  }
   672  
   673  // Empty: A generic empty message that you can re-use to avoid defining
   674  // duplicated empty messages in your APIs. A typical example is to use it as
   675  // the request or the response type of an API method. For instance: service Foo
   676  // { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); }
   677  type Empty struct {
   678  	// ServerResponse contains the HTTP response code and headers from the server.
   679  	googleapi.ServerResponse `json:"-"`
   680  }
   681  
   682  // Expr: Represents a textual expression in the Common Expression Language
   683  // (CEL) syntax. CEL is a C-like expression language. The syntax and semantics
   684  // of CEL are documented at https://github.com/google/cel-spec. Example
   685  // (Comparison): title: "Summary size limit" description: "Determines if a
   686  // summary is less than 100 chars" expression: "document.summary.size() < 100"
   687  // Example (Equality): title: "Requestor is owner" description: "Determines if
   688  // requestor is the document owner" expression: "document.owner ==
   689  // request.auth.claims.email" Example (Logic): title: "Public documents"
   690  // description: "Determine whether the document should be publicly visible"
   691  // expression: "document.type != 'private' && document.type != 'internal'"
   692  // Example (Data Manipulation): title: "Notification string" description:
   693  // "Create a notification string with a timestamp." expression: "'New message
   694  // received at ' + string(document.create_time)" The exact variables and
   695  // functions that may be referenced within an expression are determined by the
   696  // service that evaluates it. See the service documentation for additional
   697  // information.
   698  type Expr struct {
   699  	// Description: Optional. Description of the expression. This is a longer text
   700  	// which describes the expression, e.g. when hovered over it in a UI.
   701  	Description string `json:"description,omitempty"`
   702  	// Expression: Textual representation of an expression in Common Expression
   703  	// Language syntax.
   704  	Expression string `json:"expression,omitempty"`
   705  	// Location: Optional. String indicating the location of the expression for
   706  	// error reporting, e.g. a file name and a position in the file.
   707  	Location string `json:"location,omitempty"`
   708  	// Title: Optional. Title for the expression, i.e. a short string describing
   709  	// its purpose. This can be used e.g. in UIs which allow to enter the
   710  	// expression.
   711  	Title string `json:"title,omitempty"`
   712  	// ForceSendFields is a list of field names (e.g. "Description") to
   713  	// unconditionally include in API requests. By default, fields with empty or
   714  	// default values are omitted from API requests. See
   715  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   716  	// details.
   717  	ForceSendFields []string `json:"-"`
   718  	// NullFields is a list of field names (e.g. "Description") to include in API
   719  	// requests with the JSON null value. By default, fields with empty values are
   720  	// omitted from API requests. See
   721  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   722  	NullFields []string `json:"-"`
   723  }
   724  
   725  func (s *Expr) MarshalJSON() ([]byte, error) {
   726  	type NoMethod Expr
   727  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   728  }
   729  
   730  // FirewallEndpoint: Message describing Endpoint object
   731  type FirewallEndpoint struct {
   732  	// AssociatedNetworks: Output only. List of networks that are associated with
   733  	// this endpoint in the local zone. This is a projection of the
   734  	// FirewallEndpointAssociations pointing at this endpoint. A network will only
   735  	// appear in this list after traffic routing is fully configured. Format:
   736  	// projects/{project}/global/networks/{name}.
   737  	AssociatedNetworks []string `json:"associatedNetworks,omitempty"`
   738  	// Associations: Output only. List of FirewallEndpointAssociations that are
   739  	// associated to this endpoint. An association will only appear in this list
   740  	// after traffic routing is fully configured.
   741  	Associations []*FirewallEndpointAssociationReference `json:"associations,omitempty"`
   742  	// BillingProjectId: Required. Project to bill on endpoint uptime usage.
   743  	BillingProjectId string `json:"billingProjectId,omitempty"`
   744  	// CreateTime: Output only. Create time stamp
   745  	CreateTime string `json:"createTime,omitempty"`
   746  	// Description: Optional. Description of the firewall endpoint. Max length 2048
   747  	// characters.
   748  	Description string `json:"description,omitempty"`
   749  	// Labels: Optional. Labels as key value pairs
   750  	Labels map[string]string `json:"labels,omitempty"`
   751  	// Name: Immutable. Identifier. name of resource
   752  	Name string `json:"name,omitempty"`
   753  	// Reconciling: Output only. Whether reconciling is in progress, recommended
   754  	// per https://google.aip.dev/128.
   755  	Reconciling bool `json:"reconciling,omitempty"`
   756  	// State: Output only. Current state of the endpoint.
   757  	//
   758  	// Possible values:
   759  	//   "STATE_UNSPECIFIED" - Not set.
   760  	//   "CREATING" - Being created.
   761  	//   "ACTIVE" - Processing configuration updates.
   762  	//   "DELETING" - Being deleted.
   763  	//   "INACTIVE" - Down or in an error state.
   764  	State string `json:"state,omitempty"`
   765  	// UpdateTime: Output only. Update time stamp
   766  	UpdateTime string `json:"updateTime,omitempty"`
   767  
   768  	// ServerResponse contains the HTTP response code and headers from the server.
   769  	googleapi.ServerResponse `json:"-"`
   770  	// ForceSendFields is a list of field names (e.g. "AssociatedNetworks") to
   771  	// unconditionally include in API requests. By default, fields with empty or
   772  	// default values are omitted from API requests. See
   773  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   774  	// details.
   775  	ForceSendFields []string `json:"-"`
   776  	// NullFields is a list of field names (e.g. "AssociatedNetworks") to include
   777  	// in API requests with the JSON null value. By default, fields with empty
   778  	// values are omitted from API requests. See
   779  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   780  	NullFields []string `json:"-"`
   781  }
   782  
   783  func (s *FirewallEndpoint) MarshalJSON() ([]byte, error) {
   784  	type NoMethod FirewallEndpoint
   785  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   786  }
   787  
   788  // FirewallEndpointAssociation: Message describing Association object
   789  type FirewallEndpointAssociation struct {
   790  	// CreateTime: Output only. Create time stamp
   791  	CreateTime string `json:"createTime,omitempty"`
   792  	// Disabled: Optional. Whether the association is disabled. True indicates that
   793  	// traffic won't be intercepted
   794  	Disabled bool `json:"disabled,omitempty"`
   795  	// FirewallEndpoint: Required. The URL of the FirewallEndpoint that is being
   796  	// associated.
   797  	FirewallEndpoint string `json:"firewallEndpoint,omitempty"`
   798  	// Labels: Optional. Labels as key value pairs
   799  	Labels map[string]string `json:"labels,omitempty"`
   800  	// Name: Immutable. Identifier. name of resource
   801  	Name string `json:"name,omitempty"`
   802  	// Network: Required. The URL of the network that is being associated.
   803  	Network string `json:"network,omitempty"`
   804  	// Reconciling: Output only. Whether reconciling is in progress, recommended
   805  	// per https://google.aip.dev/128.
   806  	Reconciling bool `json:"reconciling,omitempty"`
   807  	// State: Output only. Current state of the association.
   808  	//
   809  	// Possible values:
   810  	//   "STATE_UNSPECIFIED" - Not set.
   811  	//   "CREATING" - Being created.
   812  	//   "ACTIVE" - Active and ready for traffic.
   813  	//   "DELETING" - Being deleted.
   814  	//   "INACTIVE" - Down or in an error state.
   815  	State string `json:"state,omitempty"`
   816  	// TlsInspectionPolicy: Optional. The URL of the TlsInspectionPolicy that is
   817  	// being associated.
   818  	TlsInspectionPolicy string `json:"tlsInspectionPolicy,omitempty"`
   819  	// UpdateTime: Output only. Update time stamp
   820  	UpdateTime string `json:"updateTime,omitempty"`
   821  
   822  	// ServerResponse contains the HTTP response code and headers from the server.
   823  	googleapi.ServerResponse `json:"-"`
   824  	// ForceSendFields is a list of field names (e.g. "CreateTime") to
   825  	// unconditionally include in API requests. By default, fields with empty or
   826  	// default values are omitted from API requests. See
   827  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   828  	// details.
   829  	ForceSendFields []string `json:"-"`
   830  	// NullFields is a list of field names (e.g. "CreateTime") to include in API
   831  	// requests with the JSON null value. By default, fields with empty values are
   832  	// omitted from API requests. See
   833  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   834  	NullFields []string `json:"-"`
   835  }
   836  
   837  func (s *FirewallEndpointAssociation) MarshalJSON() ([]byte, error) {
   838  	type NoMethod FirewallEndpointAssociation
   839  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   840  }
   841  
   842  // FirewallEndpointAssociationReference: This is a subset of the
   843  // FirewallEndpointAssociation message, containing fields to be used by the
   844  // consumer.
   845  type FirewallEndpointAssociationReference struct {
   846  	// Name: Output only. The resource name of the FirewallEndpointAssociation.
   847  	// Format:
   848  	// projects/{project}/locations/{location}/firewallEndpointAssociations/{id}
   849  	Name string `json:"name,omitempty"`
   850  	// Network: Output only. The VPC network associated. Format:
   851  	// projects/{project}/global/networks/{name}.
   852  	Network string `json:"network,omitempty"`
   853  	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
   854  	// include in API requests. By default, fields with empty or default values are
   855  	// omitted from API requests. See
   856  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   857  	// details.
   858  	ForceSendFields []string `json:"-"`
   859  	// NullFields is a list of field names (e.g. "Name") to include in API requests
   860  	// with the JSON null value. By default, fields with empty values are omitted
   861  	// from API requests. See
   862  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   863  	NullFields []string `json:"-"`
   864  }
   865  
   866  func (s *FirewallEndpointAssociationReference) MarshalJSON() ([]byte, error) {
   867  	type NoMethod FirewallEndpointAssociationReference
   868  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   869  }
   870  
   871  // GatewaySecurityPolicy: The GatewaySecurityPolicy resource contains a
   872  // collection of GatewaySecurityPolicyRules and associated metadata.
   873  type GatewaySecurityPolicy struct {
   874  	// CreateTime: Output only. The timestamp when the resource was created.
   875  	CreateTime string `json:"createTime,omitempty"`
   876  	// Description: Optional. Free-text description of the resource.
   877  	Description string `json:"description,omitempty"`
   878  	// Name: Required. Name of the resource. Name is of the form
   879  	// projects/{project}/locations/{location}/gatewaySecurityPolicies/{gateway_secu
   880  	// rity_policy} gateway_security_policy should match the pattern:(^a-z
   881  	// ([a-z0-9-]{0,61}[a-z0-9])?$).
   882  	Name string `json:"name,omitempty"`
   883  	// TlsInspectionPolicy: Optional. Name of a TLS Inspection Policy resource that
   884  	// defines how TLS inspection will be performed for any rule(s) which enables
   885  	// it.
   886  	TlsInspectionPolicy string `json:"tlsInspectionPolicy,omitempty"`
   887  	// UpdateTime: Output only. The timestamp when the resource was updated.
   888  	UpdateTime string `json:"updateTime,omitempty"`
   889  
   890  	// ServerResponse contains the HTTP response code and headers from the server.
   891  	googleapi.ServerResponse `json:"-"`
   892  	// ForceSendFields is a list of field names (e.g. "CreateTime") to
   893  	// unconditionally include in API requests. By default, fields with empty or
   894  	// default values are omitted from API requests. See
   895  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   896  	// details.
   897  	ForceSendFields []string `json:"-"`
   898  	// NullFields is a list of field names (e.g. "CreateTime") to include in API
   899  	// requests with the JSON null value. By default, fields with empty values are
   900  	// omitted from API requests. See
   901  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   902  	NullFields []string `json:"-"`
   903  }
   904  
   905  func (s *GatewaySecurityPolicy) MarshalJSON() ([]byte, error) {
   906  	type NoMethod GatewaySecurityPolicy
   907  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   908  }
   909  
   910  // GatewaySecurityPolicyRule: The GatewaySecurityPolicyRule resource is in a
   911  // nested collection within a GatewaySecurityPolicy and represents a traffic
   912  // matching condition and associated action to perform.
   913  type GatewaySecurityPolicyRule struct {
   914  	// ApplicationMatcher: Optional. CEL expression for matching on L7/application
   915  	// level criteria.
   916  	ApplicationMatcher string `json:"applicationMatcher,omitempty"`
   917  	// BasicProfile: Required. Profile which tells what the primitive action should
   918  	// be.
   919  	//
   920  	// Possible values:
   921  	//   "BASIC_PROFILE_UNSPECIFIED" - If there is not a mentioned action for the
   922  	// target.
   923  	//   "ALLOW" - Allow the matched traffic.
   924  	//   "DENY" - Deny the matched traffic.
   925  	BasicProfile string `json:"basicProfile,omitempty"`
   926  	// CreateTime: Output only. Time when the rule was created.
   927  	CreateTime string `json:"createTime,omitempty"`
   928  	// Description: Optional. Free-text description of the resource.
   929  	Description string `json:"description,omitempty"`
   930  	// Enabled: Required. Whether the rule is enforced.
   931  	Enabled bool `json:"enabled,omitempty"`
   932  	// Name: Required. Immutable. Name of the resource. ame is the full resource
   933  	// name so
   934  	// projects/{project}/locations/{location}/gatewaySecurityPolicies/{gateway_secu
   935  	// rity_policy}/rules/{rule} rule should match the pattern: (^a-z
   936  	// ([a-z0-9-]{0,61}[a-z0-9])?$).
   937  	Name string `json:"name,omitempty"`
   938  	// Priority: Required. Priority of the rule. Lower number corresponds to higher
   939  	// precedence.
   940  	Priority int64 `json:"priority,omitempty"`
   941  	// SessionMatcher: Required. CEL expression for matching on session criteria.
   942  	SessionMatcher string `json:"sessionMatcher,omitempty"`
   943  	// TlsInspectionEnabled: Optional. Flag to enable TLS inspection of traffic
   944  	// matching on , can only be true if the parent GatewaySecurityPolicy
   945  	// references a TLSInspectionConfig.
   946  	TlsInspectionEnabled bool `json:"tlsInspectionEnabled,omitempty"`
   947  	// UpdateTime: Output only. Time when the rule was updated.
   948  	UpdateTime string `json:"updateTime,omitempty"`
   949  
   950  	// ServerResponse contains the HTTP response code and headers from the server.
   951  	googleapi.ServerResponse `json:"-"`
   952  	// ForceSendFields is a list of field names (e.g. "ApplicationMatcher") to
   953  	// unconditionally include in API requests. By default, fields with empty or
   954  	// default values are 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. "ApplicationMatcher") to include
   959  	// in API requests with the JSON null value. By default, fields with empty
   960  	// values are 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 *GatewaySecurityPolicyRule) MarshalJSON() ([]byte, error) {
   966  	type NoMethod GatewaySecurityPolicyRule
   967  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   968  }
   969  
   970  // GoogleCloudNetworksecurityV1CertificateProvider: Specification of
   971  // certificate provider. Defines the mechanism to obtain the certificate and
   972  // private key for peer to peer authentication.
   973  type GoogleCloudNetworksecurityV1CertificateProvider struct {
   974  	// CertificateProviderInstance: The certificate provider instance specification
   975  	// that will be passed to the data plane, which will be used to load necessary
   976  	// credential information.
   977  	CertificateProviderInstance *CertificateProviderInstance `json:"certificateProviderInstance,omitempty"`
   978  	// GrpcEndpoint: gRPC specific configuration to access the gRPC server to
   979  	// obtain the cert and private key.
   980  	GrpcEndpoint *GoogleCloudNetworksecurityV1GrpcEndpoint `json:"grpcEndpoint,omitempty"`
   981  	// ForceSendFields is a list of field names (e.g.
   982  	// "CertificateProviderInstance") to unconditionally include in API requests.
   983  	// By default, fields with empty or default values are omitted from API
   984  	// requests. See https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields
   985  	// for more details.
   986  	ForceSendFields []string `json:"-"`
   987  	// NullFields is a list of field names (e.g. "CertificateProviderInstance") to
   988  	// include in API requests with the JSON null value. By default, fields with
   989  	// empty values are omitted from API requests. See
   990  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   991  	NullFields []string `json:"-"`
   992  }
   993  
   994  func (s *GoogleCloudNetworksecurityV1CertificateProvider) MarshalJSON() ([]byte, error) {
   995  	type NoMethod GoogleCloudNetworksecurityV1CertificateProvider
   996  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   997  }
   998  
   999  // GoogleCloudNetworksecurityV1GrpcEndpoint: Specification of the GRPC
  1000  // Endpoint.
  1001  type GoogleCloudNetworksecurityV1GrpcEndpoint struct {
  1002  	// TargetUri: Required. The target URI of the gRPC endpoint. Only UDS path is
  1003  	// supported, and should start with "unix:".
  1004  	TargetUri string `json:"targetUri,omitempty"`
  1005  	// ForceSendFields is a list of field names (e.g. "TargetUri") to
  1006  	// unconditionally include in API requests. By default, fields with empty or
  1007  	// default values are omitted from API requests. See
  1008  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1009  	// details.
  1010  	ForceSendFields []string `json:"-"`
  1011  	// NullFields is a list of field names (e.g. "TargetUri") to include in API
  1012  	// requests with the JSON null value. By default, fields with empty values are
  1013  	// omitted from API requests. See
  1014  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1015  	NullFields []string `json:"-"`
  1016  }
  1017  
  1018  func (s *GoogleCloudNetworksecurityV1GrpcEndpoint) MarshalJSON() ([]byte, error) {
  1019  	type NoMethod GoogleCloudNetworksecurityV1GrpcEndpoint
  1020  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1021  }
  1022  
  1023  // GoogleIamV1AuditConfig: Specifies the audit configuration for a service. The
  1024  // configuration determines which permission types are logged, and what
  1025  // identities, if any, are exempted from logging. An AuditConfig must have one
  1026  // or more AuditLogConfigs. If there are AuditConfigs for both `allServices`
  1027  // and a specific service, the union of the two AuditConfigs is used for that
  1028  // service: the log_types specified in each AuditConfig are enabled, and the
  1029  // exempted_members in each AuditLogConfig are exempted. Example Policy with
  1030  // multiple AuditConfigs: { "audit_configs": [ { "service": "allServices",
  1031  // "audit_log_configs": [ { "log_type": "DATA_READ", "exempted_members": [
  1032  // "user:jose@example.com" ] }, { "log_type": "DATA_WRITE" }, { "log_type":
  1033  // "ADMIN_READ" } ] }, { "service": "sampleservice.googleapis.com",
  1034  // "audit_log_configs": [ { "log_type": "DATA_READ" }, { "log_type":
  1035  // "DATA_WRITE", "exempted_members": [ "user:aliya@example.com" ] } ] } ] } For
  1036  // sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
  1037  // logging. It also exempts `jose@example.com` from DATA_READ logging, and
  1038  // `aliya@example.com` from DATA_WRITE logging.
  1039  type GoogleIamV1AuditConfig struct {
  1040  	// AuditLogConfigs: The configuration for logging of each type of permission.
  1041  	AuditLogConfigs []*GoogleIamV1AuditLogConfig `json:"auditLogConfigs,omitempty"`
  1042  	// Service: Specifies a service that will be enabled for audit logging. For
  1043  	// example, `storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices`
  1044  	// is a special value that covers all services.
  1045  	Service string `json:"service,omitempty"`
  1046  	// ForceSendFields is a list of field names (e.g. "AuditLogConfigs") to
  1047  	// unconditionally include in API requests. By default, fields with empty or
  1048  	// default values are omitted from API requests. See
  1049  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1050  	// details.
  1051  	ForceSendFields []string `json:"-"`
  1052  	// NullFields is a list of field names (e.g. "AuditLogConfigs") to include in
  1053  	// API requests with the JSON null value. By default, fields with empty values
  1054  	// are omitted from API requests. See
  1055  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1056  	NullFields []string `json:"-"`
  1057  }
  1058  
  1059  func (s *GoogleIamV1AuditConfig) MarshalJSON() ([]byte, error) {
  1060  	type NoMethod GoogleIamV1AuditConfig
  1061  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1062  }
  1063  
  1064  // GoogleIamV1AuditLogConfig: Provides the configuration for logging a type of
  1065  // permissions. Example: { "audit_log_configs": [ { "log_type": "DATA_READ",
  1066  // "exempted_members": [ "user:jose@example.com" ] }, { "log_type":
  1067  // "DATA_WRITE" } ] } This enables 'DATA_READ' and 'DATA_WRITE' logging, while
  1068  // exempting jose@example.com from DATA_READ logging.
  1069  type GoogleIamV1AuditLogConfig struct {
  1070  	// ExemptedMembers: Specifies the identities that do not cause logging for this
  1071  	// type of permission. Follows the same format of Binding.members.
  1072  	ExemptedMembers []string `json:"exemptedMembers,omitempty"`
  1073  	// LogType: The log type that this config enables.
  1074  	//
  1075  	// Possible values:
  1076  	//   "LOG_TYPE_UNSPECIFIED" - Default case. Should never be this.
  1077  	//   "ADMIN_READ" - Admin reads. Example: CloudIAM getIamPolicy
  1078  	//   "DATA_WRITE" - Data writes. Example: CloudSQL Users create
  1079  	//   "DATA_READ" - Data reads. Example: CloudSQL Users list
  1080  	LogType string `json:"logType,omitempty"`
  1081  	// ForceSendFields is a list of field names (e.g. "ExemptedMembers") to
  1082  	// unconditionally include in API requests. By default, fields with empty or
  1083  	// default values are omitted from API requests. See
  1084  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1085  	// details.
  1086  	ForceSendFields []string `json:"-"`
  1087  	// NullFields is a list of field names (e.g. "ExemptedMembers") to include in
  1088  	// API requests with the JSON null value. By default, fields with empty values
  1089  	// are omitted from API requests. See
  1090  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1091  	NullFields []string `json:"-"`
  1092  }
  1093  
  1094  func (s *GoogleIamV1AuditLogConfig) MarshalJSON() ([]byte, error) {
  1095  	type NoMethod GoogleIamV1AuditLogConfig
  1096  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1097  }
  1098  
  1099  // GoogleIamV1Binding: Associates `members`, or principals, with a `role`.
  1100  type GoogleIamV1Binding struct {
  1101  	// Condition: The condition that is associated with this binding. If the
  1102  	// condition evaluates to `true`, then this binding applies to the current
  1103  	// request. If the condition evaluates to `false`, then this binding does not
  1104  	// apply to the current request. However, a different role binding might grant
  1105  	// the same role to one or more of the principals in this binding. To learn
  1106  	// which resources support conditions in their IAM policies, see the IAM
  1107  	// documentation
  1108  	// (https://cloud.google.com/iam/help/conditions/resource-policies).
  1109  	Condition *Expr `json:"condition,omitempty"`
  1110  	// Members: Specifies the principals requesting access for a Google Cloud
  1111  	// resource. `members` can have the following values: * `allUsers`: A special
  1112  	// identifier that represents anyone who is on the internet; with or without a
  1113  	// Google account. * `allAuthenticatedUsers`: A special identifier that
  1114  	// represents anyone who is authenticated with a Google account or a service
  1115  	// account. Does not include identities that come from external identity
  1116  	// providers (IdPs) through identity federation. * `user:{emailid}`: An email
  1117  	// address that represents a specific Google account. For example,
  1118  	// `alice@example.com` . * `serviceAccount:{emailid}`: An email address that
  1119  	// represents a Google service account. For example,
  1120  	// `my-other-app@appspot.gserviceaccount.com`. *
  1121  	// `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An
  1122  	// identifier for a Kubernetes service account
  1123  	// (https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts).
  1124  	// For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. *
  1125  	// `group:{emailid}`: An email address that represents a Google group. For
  1126  	// example, `admins@example.com`. * `domain:{domain}`: The G Suite domain
  1127  	// (primary) that represents all the users of that domain. For example,
  1128  	// `google.com` or `example.com`. *
  1129  	// `principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/sub
  1130  	// ject/{subject_attribute_value}`: A single identity in a workforce identity
  1131  	// pool. *
  1132  	// `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/
  1133  	// group/{group_id}`: All workforce identities in a group. *
  1134  	// `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/
  1135  	// attribute.{attribute_name}/{attribute_value}`: All workforce identities with
  1136  	// a specific attribute value. *
  1137  	// `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/
  1138  	// *`: All identities in a workforce identity pool. *
  1139  	// `principal://iam.googleapis.com/projects/{project_number}/locations/global/wo
  1140  	// rkloadIdentityPools/{pool_id}/subject/{subject_attribute_value}`: A single
  1141  	// identity in a workload identity pool. *
  1142  	// `principalSet://iam.googleapis.com/projects/{project_number}/locations/global
  1143  	// /workloadIdentityPools/{pool_id}/group/{group_id}`: A workload identity pool
  1144  	// group. *
  1145  	// `principalSet://iam.googleapis.com/projects/{project_number}/locations/global
  1146  	// /workloadIdentityPools/{pool_id}/attribute.{attribute_name}/{attribute_value}
  1147  	// `: All identities in a workload identity pool with a certain attribute. *
  1148  	// `principalSet://iam.googleapis.com/projects/{project_number}/locations/global
  1149  	// /workloadIdentityPools/{pool_id}/*`: All identities in a workload identity
  1150  	// pool. * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus
  1151  	// unique identifier) representing a user that has been recently deleted. For
  1152  	// example, `alice@example.com?uid=123456789012345678901`. If the user is
  1153  	// recovered, this value reverts to `user:{emailid}` and the recovered user
  1154  	// retains the role in the binding. *
  1155  	// `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus
  1156  	// unique identifier) representing a service account that has been recently
  1157  	// deleted. For example,
  1158  	// `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the
  1159  	// service account is undeleted, this value reverts to
  1160  	// `serviceAccount:{emailid}` and the undeleted service account retains the
  1161  	// role in the binding. * `deleted:group:{emailid}?uid={uniqueid}`: An email
  1162  	// address (plus unique identifier) representing a Google group that has been
  1163  	// recently deleted. For example,
  1164  	// `admins@example.com?uid=123456789012345678901`. If the group is recovered,
  1165  	// this value reverts to `group:{emailid}` and the recovered group retains the
  1166  	// role in the binding. *
  1167  	// `deleted:principal://iam.googleapis.com/locations/global/workforcePools/{pool
  1168  	// _id}/subject/{subject_attribute_value}`: Deleted single identity in a
  1169  	// workforce identity pool. For example,
  1170  	// `deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-po
  1171  	// ol-id/subject/my-subject-attribute-value`.
  1172  	Members []string `json:"members,omitempty"`
  1173  	// Role: Role that is assigned to the list of `members`, or principals. For
  1174  	// example, `roles/viewer`, `roles/editor`, or `roles/owner`. For an overview
  1175  	// of the IAM roles and permissions, see the IAM documentation
  1176  	// (https://cloud.google.com/iam/docs/roles-overview). For a list of the
  1177  	// available pre-defined roles, see here
  1178  	// (https://cloud.google.com/iam/docs/understanding-roles).
  1179  	Role string `json:"role,omitempty"`
  1180  	// ForceSendFields is a list of field names (e.g. "Condition") to
  1181  	// unconditionally include in API requests. By default, fields with empty or
  1182  	// default values are omitted from API requests. See
  1183  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1184  	// details.
  1185  	ForceSendFields []string `json:"-"`
  1186  	// NullFields is a list of field names (e.g. "Condition") to include in API
  1187  	// requests with the JSON null value. By default, fields with empty values are
  1188  	// omitted from API requests. See
  1189  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1190  	NullFields []string `json:"-"`
  1191  }
  1192  
  1193  func (s *GoogleIamV1Binding) MarshalJSON() ([]byte, error) {
  1194  	type NoMethod GoogleIamV1Binding
  1195  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1196  }
  1197  
  1198  // GoogleIamV1Policy: An Identity and Access Management (IAM) policy, which
  1199  // specifies access controls for Google Cloud resources. A `Policy` is a
  1200  // collection of `bindings`. A `binding` binds one or more `members`, or
  1201  // principals, to a single `role`. Principals can be user accounts, service
  1202  // accounts, Google groups, and domains (such as G Suite). A `role` is a named
  1203  // list of permissions; each `role` can be an IAM predefined role or a
  1204  // user-created custom role. For some types of Google Cloud resources, a
  1205  // `binding` can also specify a `condition`, which is a logical expression that
  1206  // allows access to a resource only if the expression evaluates to `true`. A
  1207  // condition can add constraints based on attributes of the request, the
  1208  // resource, or both. To learn which resources support conditions in their IAM
  1209  // policies, see the IAM documentation
  1210  // (https://cloud.google.com/iam/help/conditions/resource-policies). **JSON
  1211  // example:** ``` { "bindings": [ { "role":
  1212  // "roles/resourcemanager.organizationAdmin", "members": [
  1213  // "user:mike@example.com", "group:admins@example.com", "domain:google.com",
  1214  // "serviceAccount:my-project-id@appspot.gserviceaccount.com" ] }, { "role":
  1215  // "roles/resourcemanager.organizationViewer", "members": [
  1216  // "user:eve@example.com" ], "condition": { "title": "expirable access",
  1217  // "description": "Does not grant access after Sep 2020", "expression":
  1218  // "request.time < timestamp('2020-10-01T00:00:00.000Z')", } } ], "etag":
  1219  // "BwWWja0YfJA=", "version": 3 } ``` **YAML example:** ``` bindings: -
  1220  // members: - user:mike@example.com - group:admins@example.com -
  1221  // domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
  1222  // role: roles/resourcemanager.organizationAdmin - members: -
  1223  // user:eve@example.com role: roles/resourcemanager.organizationViewer
  1224  // condition: title: expirable access description: Does not grant access after
  1225  // Sep 2020 expression: request.time < timestamp('2020-10-01T00:00:00.000Z')
  1226  // etag: BwWWja0YfJA= version: 3 ``` For a description of IAM and its features,
  1227  // see the IAM documentation (https://cloud.google.com/iam/docs/).
  1228  type GoogleIamV1Policy struct {
  1229  	// AuditConfigs: Specifies cloud audit logging configuration for this policy.
  1230  	AuditConfigs []*GoogleIamV1AuditConfig `json:"auditConfigs,omitempty"`
  1231  	// Bindings: Associates a list of `members`, or principals, with a `role`.
  1232  	// Optionally, may specify a `condition` that determines how and when the
  1233  	// `bindings` are applied. Each of the `bindings` must contain at least one
  1234  	// principal. The `bindings` in a `Policy` can refer to up to 1,500 principals;
  1235  	// up to 250 of these principals can be Google groups. Each occurrence of a
  1236  	// principal counts towards these limits. For example, if the `bindings` grant
  1237  	// 50 different roles to `user:alice@example.com`, and not to any other
  1238  	// principal, then you can add another 1,450 principals to the `bindings` in
  1239  	// the `Policy`.
  1240  	Bindings []*GoogleIamV1Binding `json:"bindings,omitempty"`
  1241  	// Etag: `etag` is used for optimistic concurrency control as a way to help
  1242  	// prevent simultaneous updates of a policy from overwriting each other. It is
  1243  	// strongly suggested that systems make use of the `etag` in the
  1244  	// read-modify-write cycle to perform policy updates in order to avoid race
  1245  	// conditions: An `etag` is returned in the response to `getIamPolicy`, and
  1246  	// systems are expected to put that etag in the request to `setIamPolicy` to
  1247  	// ensure that their change will be applied to the same version of the policy.
  1248  	// **Important:** If you use IAM Conditions, you must include the `etag` field
  1249  	// whenever you call `setIamPolicy`. If you omit this field, then IAM allows
  1250  	// you to overwrite a version `3` policy with a version `1` policy, and all of
  1251  	// the conditions in the version `3` policy are lost.
  1252  	Etag string `json:"etag,omitempty"`
  1253  	// Version: Specifies the format of the policy. Valid values are `0`, `1`, and
  1254  	// `3`. Requests that specify an invalid value are rejected. Any operation that
  1255  	// affects conditional role bindings must specify version `3`. This requirement
  1256  	// applies to the following operations: * Getting a policy that includes a
  1257  	// conditional role binding * Adding a conditional role binding to a policy *
  1258  	// Changing a conditional role binding in a policy * Removing any role binding,
  1259  	// with or without a condition, from a policy that includes conditions
  1260  	// **Important:** If you use IAM Conditions, you must include the `etag` field
  1261  	// whenever you call `setIamPolicy`. If you omit this field, then IAM allows
  1262  	// you to overwrite a version `3` policy with a version `1` policy, and all of
  1263  	// the conditions in the version `3` policy are lost. If a policy does not
  1264  	// include any conditions, operations on that policy may specify any valid
  1265  	// version or leave the field unset. To learn which resources support
  1266  	// conditions in their IAM policies, see the IAM documentation
  1267  	// (https://cloud.google.com/iam/help/conditions/resource-policies).
  1268  	Version int64 `json:"version,omitempty"`
  1269  
  1270  	// ServerResponse contains the HTTP response code and headers from the server.
  1271  	googleapi.ServerResponse `json:"-"`
  1272  	// ForceSendFields is a list of field names (e.g. "AuditConfigs") to
  1273  	// unconditionally include in API requests. By default, fields with empty or
  1274  	// default values are omitted from API requests. See
  1275  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1276  	// details.
  1277  	ForceSendFields []string `json:"-"`
  1278  	// NullFields is a list of field names (e.g. "AuditConfigs") to include in API
  1279  	// requests with the JSON null value. By default, fields with empty values are
  1280  	// omitted from API requests. See
  1281  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1282  	NullFields []string `json:"-"`
  1283  }
  1284  
  1285  func (s *GoogleIamV1Policy) MarshalJSON() ([]byte, error) {
  1286  	type NoMethod GoogleIamV1Policy
  1287  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1288  }
  1289  
  1290  // GoogleIamV1SetIamPolicyRequest: Request message for `SetIamPolicy` method.
  1291  type GoogleIamV1SetIamPolicyRequest struct {
  1292  	// Policy: REQUIRED: The complete policy to be applied to the `resource`. The
  1293  	// size of the policy is limited to a few 10s of KB. An empty policy is a valid
  1294  	// policy but certain Google Cloud services (such as Projects) might reject
  1295  	// them.
  1296  	Policy *GoogleIamV1Policy `json:"policy,omitempty"`
  1297  	// UpdateMask: OPTIONAL: A FieldMask specifying which fields of the policy to
  1298  	// modify. Only the fields in the mask will be modified. If no mask is
  1299  	// provided, the following default mask is used: `paths: "bindings, etag"
  1300  	UpdateMask string `json:"updateMask,omitempty"`
  1301  	// ForceSendFields is a list of field names (e.g. "Policy") to unconditionally
  1302  	// include in API requests. By default, fields with empty or default values are
  1303  	// omitted from API requests. See
  1304  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1305  	// details.
  1306  	ForceSendFields []string `json:"-"`
  1307  	// NullFields is a list of field names (e.g. "Policy") to include in API
  1308  	// requests with the JSON null value. By default, fields with empty values are
  1309  	// omitted from API requests. See
  1310  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1311  	NullFields []string `json:"-"`
  1312  }
  1313  
  1314  func (s *GoogleIamV1SetIamPolicyRequest) MarshalJSON() ([]byte, error) {
  1315  	type NoMethod GoogleIamV1SetIamPolicyRequest
  1316  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1317  }
  1318  
  1319  // GoogleIamV1TestIamPermissionsRequest: Request message for
  1320  // `TestIamPermissions` method.
  1321  type GoogleIamV1TestIamPermissionsRequest struct {
  1322  	// Permissions: The set of permissions to check for the `resource`. Permissions
  1323  	// with wildcards (such as `*` or `storage.*`) are not allowed. For more
  1324  	// information see IAM Overview
  1325  	// (https://cloud.google.com/iam/docs/overview#permissions).
  1326  	Permissions []string `json:"permissions,omitempty"`
  1327  	// ForceSendFields is a list of field names (e.g. "Permissions") to
  1328  	// unconditionally include in API requests. By default, fields with empty or
  1329  	// default values are omitted from API requests. See
  1330  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1331  	// details.
  1332  	ForceSendFields []string `json:"-"`
  1333  	// NullFields is a list of field names (e.g. "Permissions") to include in API
  1334  	// requests with the JSON null value. By default, fields with empty values are
  1335  	// omitted from API requests. See
  1336  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1337  	NullFields []string `json:"-"`
  1338  }
  1339  
  1340  func (s *GoogleIamV1TestIamPermissionsRequest) MarshalJSON() ([]byte, error) {
  1341  	type NoMethod GoogleIamV1TestIamPermissionsRequest
  1342  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1343  }
  1344  
  1345  // GoogleIamV1TestIamPermissionsResponse: Response message for
  1346  // `TestIamPermissions` method.
  1347  type GoogleIamV1TestIamPermissionsResponse struct {
  1348  	// Permissions: A subset of `TestPermissionsRequest.permissions` that the
  1349  	// caller is allowed.
  1350  	Permissions []string `json:"permissions,omitempty"`
  1351  
  1352  	// ServerResponse contains the HTTP response code and headers from the server.
  1353  	googleapi.ServerResponse `json:"-"`
  1354  	// ForceSendFields is a list of field names (e.g. "Permissions") to
  1355  	// unconditionally include in API requests. By default, fields with empty or
  1356  	// default values are omitted from API requests. See
  1357  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1358  	// details.
  1359  	ForceSendFields []string `json:"-"`
  1360  	// NullFields is a list of field names (e.g. "Permissions") to include in API
  1361  	// requests with the JSON null value. By default, fields with empty values are
  1362  	// omitted from API requests. See
  1363  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1364  	NullFields []string `json:"-"`
  1365  }
  1366  
  1367  func (s *GoogleIamV1TestIamPermissionsResponse) MarshalJSON() ([]byte, error) {
  1368  	type NoMethod GoogleIamV1TestIamPermissionsResponse
  1369  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1370  }
  1371  
  1372  // HttpHeaderMatch: Specification of HTTP header match attributes.
  1373  type HttpHeaderMatch struct {
  1374  	// HeaderName: Required. The name of the HTTP header to match. For matching
  1375  	// against the HTTP request's authority, use a headerMatch with the header name
  1376  	// ":authority". For matching a request's method, use the headerName ":method".
  1377  	HeaderName string `json:"headerName,omitempty"`
  1378  	// RegexMatch: Required. The value of the header must match the regular
  1379  	// expression specified in regexMatch. For regular expression grammar, please
  1380  	// see: en.cppreference.com/w/cpp/regex/ecmascript For matching against a port
  1381  	// specified in the HTTP request, use a headerMatch with headerName set to Host
  1382  	// and a regular expression that satisfies the RFC2616 Host header's port
  1383  	// specifier.
  1384  	RegexMatch string `json:"regexMatch,omitempty"`
  1385  	// ForceSendFields is a list of field names (e.g. "HeaderName") to
  1386  	// unconditionally include in API requests. By default, fields with empty or
  1387  	// default values are omitted from API requests. See
  1388  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1389  	// details.
  1390  	ForceSendFields []string `json:"-"`
  1391  	// NullFields is a list of field names (e.g. "HeaderName") to include in API
  1392  	// requests with the JSON null value. By default, fields with empty values are
  1393  	// omitted from API requests. See
  1394  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1395  	NullFields []string `json:"-"`
  1396  }
  1397  
  1398  func (s *HttpHeaderMatch) MarshalJSON() ([]byte, error) {
  1399  	type NoMethod HttpHeaderMatch
  1400  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1401  }
  1402  
  1403  // ListAddressGroupReferencesResponse: Response of the
  1404  // ListAddressGroupReferences method.
  1405  type ListAddressGroupReferencesResponse struct {
  1406  	// AddressGroupReferences: A list of references that matches the specified
  1407  	// filter in the request.
  1408  	AddressGroupReferences []*ListAddressGroupReferencesResponseAddressGroupReference `json:"addressGroupReferences,omitempty"`
  1409  	// NextPageToken: If there might be more results than those appearing in this
  1410  	// response, then `next_page_token` is included. To get the next set of
  1411  	// results, call this method again using the value of `next_page_token` as
  1412  	// `page_token`.
  1413  	NextPageToken string `json:"nextPageToken,omitempty"`
  1414  
  1415  	// ServerResponse contains the HTTP response code and headers from the server.
  1416  	googleapi.ServerResponse `json:"-"`
  1417  	// ForceSendFields is a list of field names (e.g. "AddressGroupReferences") to
  1418  	// unconditionally include in API requests. By default, fields with empty or
  1419  	// default values are omitted from API requests. See
  1420  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1421  	// details.
  1422  	ForceSendFields []string `json:"-"`
  1423  	// NullFields is a list of field names (e.g. "AddressGroupReferences") to
  1424  	// include in API requests with the JSON null value. By default, fields with
  1425  	// empty values are omitted from API requests. See
  1426  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1427  	NullFields []string `json:"-"`
  1428  }
  1429  
  1430  func (s *ListAddressGroupReferencesResponse) MarshalJSON() ([]byte, error) {
  1431  	type NoMethod ListAddressGroupReferencesResponse
  1432  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1433  }
  1434  
  1435  // ListAddressGroupReferencesResponseAddressGroupReference: The Reference of
  1436  // AddressGroup.
  1437  type ListAddressGroupReferencesResponseAddressGroupReference struct {
  1438  	// FirewallPolicy: FirewallPolicy that is using the Address Group.
  1439  	FirewallPolicy string `json:"firewallPolicy,omitempty"`
  1440  	// RulePriority: Rule priority of the FirewallPolicy that is using the Address
  1441  	// Group.
  1442  	RulePriority int64 `json:"rulePriority,omitempty"`
  1443  	// SecurityPolicy: Cloud Armor SecurityPolicy that is using the Address Group.
  1444  	SecurityPolicy string `json:"securityPolicy,omitempty"`
  1445  	// ForceSendFields is a list of field names (e.g. "FirewallPolicy") to
  1446  	// unconditionally include in API requests. By default, fields with empty or
  1447  	// default values are omitted from API requests. See
  1448  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1449  	// details.
  1450  	ForceSendFields []string `json:"-"`
  1451  	// NullFields is a list of field names (e.g. "FirewallPolicy") to include in
  1452  	// API requests with the JSON null value. By default, fields with empty values
  1453  	// are omitted from API requests. See
  1454  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1455  	NullFields []string `json:"-"`
  1456  }
  1457  
  1458  func (s *ListAddressGroupReferencesResponseAddressGroupReference) MarshalJSON() ([]byte, error) {
  1459  	type NoMethod ListAddressGroupReferencesResponseAddressGroupReference
  1460  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1461  }
  1462  
  1463  // ListAddressGroupsResponse: Response returned by the ListAddressGroups
  1464  // method.
  1465  type ListAddressGroupsResponse struct {
  1466  	// AddressGroups: List of AddressGroups resources.
  1467  	AddressGroups []*AddressGroup `json:"addressGroups,omitempty"`
  1468  	// NextPageToken: If there might be more results than those appearing in this
  1469  	// response, then `next_page_token` is included. To get the next set of
  1470  	// results, call this method again using the value of `next_page_token` as
  1471  	// `page_token`.
  1472  	NextPageToken string `json:"nextPageToken,omitempty"`
  1473  
  1474  	// ServerResponse contains the HTTP response code and headers from the server.
  1475  	googleapi.ServerResponse `json:"-"`
  1476  	// ForceSendFields is a list of field names (e.g. "AddressGroups") to
  1477  	// unconditionally include in API requests. By default, fields with empty or
  1478  	// default values are omitted from API requests. See
  1479  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1480  	// details.
  1481  	ForceSendFields []string `json:"-"`
  1482  	// NullFields is a list of field names (e.g. "AddressGroups") to include in API
  1483  	// requests with the JSON null value. By default, fields with empty values are
  1484  	// omitted from API requests. See
  1485  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1486  	NullFields []string `json:"-"`
  1487  }
  1488  
  1489  func (s *ListAddressGroupsResponse) MarshalJSON() ([]byte, error) {
  1490  	type NoMethod ListAddressGroupsResponse
  1491  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1492  }
  1493  
  1494  // ListAuthorizationPoliciesResponse: Response returned by the
  1495  // ListAuthorizationPolicies method.
  1496  type ListAuthorizationPoliciesResponse struct {
  1497  	// AuthorizationPolicies: List of AuthorizationPolicies resources.
  1498  	AuthorizationPolicies []*AuthorizationPolicy `json:"authorizationPolicies,omitempty"`
  1499  	// NextPageToken: If there might be more results than those appearing in this
  1500  	// response, then `next_page_token` is included. To get the next set of
  1501  	// results, call this method again using the value of `next_page_token` as
  1502  	// `page_token`.
  1503  	NextPageToken string `json:"nextPageToken,omitempty"`
  1504  
  1505  	// ServerResponse contains the HTTP response code and headers from the server.
  1506  	googleapi.ServerResponse `json:"-"`
  1507  	// ForceSendFields is a list of field names (e.g. "AuthorizationPolicies") to
  1508  	// unconditionally include in API requests. By default, fields with empty or
  1509  	// default values are omitted from API requests. See
  1510  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1511  	// details.
  1512  	ForceSendFields []string `json:"-"`
  1513  	// NullFields is a list of field names (e.g. "AuthorizationPolicies") to
  1514  	// include in API requests with the JSON null value. By default, fields with
  1515  	// empty values are omitted from API requests. See
  1516  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1517  	NullFields []string `json:"-"`
  1518  }
  1519  
  1520  func (s *ListAuthorizationPoliciesResponse) MarshalJSON() ([]byte, error) {
  1521  	type NoMethod ListAuthorizationPoliciesResponse
  1522  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1523  }
  1524  
  1525  // ListClientTlsPoliciesResponse: Response returned by the
  1526  // ListClientTlsPolicies method.
  1527  type ListClientTlsPoliciesResponse struct {
  1528  	// ClientTlsPolicies: List of ClientTlsPolicy resources.
  1529  	ClientTlsPolicies []*ClientTlsPolicy `json:"clientTlsPolicies,omitempty"`
  1530  	// NextPageToken: If there might be more results than those appearing in this
  1531  	// response, then `next_page_token` is included. To get the next set of
  1532  	// results, call this method again using the value of `next_page_token` as
  1533  	// `page_token`.
  1534  	NextPageToken string `json:"nextPageToken,omitempty"`
  1535  
  1536  	// ServerResponse contains the HTTP response code and headers from the server.
  1537  	googleapi.ServerResponse `json:"-"`
  1538  	// ForceSendFields is a list of field names (e.g. "ClientTlsPolicies") to
  1539  	// unconditionally include in API requests. By default, fields with empty or
  1540  	// default values are omitted from API requests. See
  1541  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1542  	// details.
  1543  	ForceSendFields []string `json:"-"`
  1544  	// NullFields is a list of field names (e.g. "ClientTlsPolicies") to include in
  1545  	// API requests with the JSON null value. By default, fields with empty values
  1546  	// are omitted from API requests. See
  1547  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1548  	NullFields []string `json:"-"`
  1549  }
  1550  
  1551  func (s *ListClientTlsPoliciesResponse) MarshalJSON() ([]byte, error) {
  1552  	type NoMethod ListClientTlsPoliciesResponse
  1553  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1554  }
  1555  
  1556  // ListFirewallEndpointAssociationsResponse: Message for response to listing
  1557  // Associations
  1558  type ListFirewallEndpointAssociationsResponse struct {
  1559  	// FirewallEndpointAssociations: The list of Association
  1560  	FirewallEndpointAssociations []*FirewallEndpointAssociation `json:"firewallEndpointAssociations,omitempty"`
  1561  	// NextPageToken: A token identifying a page of results the server should
  1562  	// return.
  1563  	NextPageToken string `json:"nextPageToken,omitempty"`
  1564  	// Unreachable: Locations that could not be reached.
  1565  	Unreachable []string `json:"unreachable,omitempty"`
  1566  
  1567  	// ServerResponse contains the HTTP response code and headers from the server.
  1568  	googleapi.ServerResponse `json:"-"`
  1569  	// ForceSendFields is a list of field names (e.g.
  1570  	// "FirewallEndpointAssociations") to unconditionally include in API requests.
  1571  	// By default, fields with empty or default values are omitted from API
  1572  	// requests. See https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields
  1573  	// for more details.
  1574  	ForceSendFields []string `json:"-"`
  1575  	// NullFields is a list of field names (e.g. "FirewallEndpointAssociations") to
  1576  	// include in API requests with the JSON null value. By default, fields with
  1577  	// empty values are omitted from API requests. See
  1578  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1579  	NullFields []string `json:"-"`
  1580  }
  1581  
  1582  func (s *ListFirewallEndpointAssociationsResponse) MarshalJSON() ([]byte, error) {
  1583  	type NoMethod ListFirewallEndpointAssociationsResponse
  1584  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1585  }
  1586  
  1587  // ListFirewallEndpointsResponse: Message for response to listing Endpoints
  1588  type ListFirewallEndpointsResponse struct {
  1589  	// FirewallEndpoints: The list of Endpoint
  1590  	FirewallEndpoints []*FirewallEndpoint `json:"firewallEndpoints,omitempty"`
  1591  	// NextPageToken: A token identifying a page of results the server should
  1592  	// return.
  1593  	NextPageToken string `json:"nextPageToken,omitempty"`
  1594  	// Unreachable: Locations that could not be reached.
  1595  	Unreachable []string `json:"unreachable,omitempty"`
  1596  
  1597  	// ServerResponse contains the HTTP response code and headers from the server.
  1598  	googleapi.ServerResponse `json:"-"`
  1599  	// ForceSendFields is a list of field names (e.g. "FirewallEndpoints") to
  1600  	// unconditionally include in API requests. By default, fields with empty or
  1601  	// default values are omitted from API requests. See
  1602  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1603  	// details.
  1604  	ForceSendFields []string `json:"-"`
  1605  	// NullFields is a list of field names (e.g. "FirewallEndpoints") to include in
  1606  	// API requests with the JSON null value. By default, fields with empty values
  1607  	// are omitted from API requests. See
  1608  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1609  	NullFields []string `json:"-"`
  1610  }
  1611  
  1612  func (s *ListFirewallEndpointsResponse) MarshalJSON() ([]byte, error) {
  1613  	type NoMethod ListFirewallEndpointsResponse
  1614  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1615  }
  1616  
  1617  // ListGatewaySecurityPoliciesResponse: Response returned by the
  1618  // ListGatewaySecurityPolicies method.
  1619  type ListGatewaySecurityPoliciesResponse struct {
  1620  	// GatewaySecurityPolicies: List of GatewaySecurityPolicies resources.
  1621  	GatewaySecurityPolicies []*GatewaySecurityPolicy `json:"gatewaySecurityPolicies,omitempty"`
  1622  	// NextPageToken: If there might be more results than those appearing in this
  1623  	// response, then 'next_page_token' is included. To get the next set of
  1624  	// results, call this method again using the value of 'next_page_token' as
  1625  	// 'page_token'.
  1626  	NextPageToken string `json:"nextPageToken,omitempty"`
  1627  	// Unreachable: Locations that could not be reached.
  1628  	Unreachable []string `json:"unreachable,omitempty"`
  1629  
  1630  	// ServerResponse contains the HTTP response code and headers from the server.
  1631  	googleapi.ServerResponse `json:"-"`
  1632  	// ForceSendFields is a list of field names (e.g. "GatewaySecurityPolicies") to
  1633  	// unconditionally include in API requests. By default, fields with empty or
  1634  	// default values are omitted from API requests. See
  1635  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1636  	// details.
  1637  	ForceSendFields []string `json:"-"`
  1638  	// NullFields is a list of field names (e.g. "GatewaySecurityPolicies") to
  1639  	// include in API requests with the JSON null value. By default, fields with
  1640  	// empty values are omitted from API requests. See
  1641  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1642  	NullFields []string `json:"-"`
  1643  }
  1644  
  1645  func (s *ListGatewaySecurityPoliciesResponse) MarshalJSON() ([]byte, error) {
  1646  	type NoMethod ListGatewaySecurityPoliciesResponse
  1647  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1648  }
  1649  
  1650  // ListGatewaySecurityPolicyRulesResponse: Response returned by the
  1651  // ListGatewaySecurityPolicyRules method.
  1652  type ListGatewaySecurityPolicyRulesResponse struct {
  1653  	// GatewaySecurityPolicyRules: List of GatewaySecurityPolicyRule resources.
  1654  	GatewaySecurityPolicyRules []*GatewaySecurityPolicyRule `json:"gatewaySecurityPolicyRules,omitempty"`
  1655  	// NextPageToken: If there might be more results than those appearing in this
  1656  	// response, then 'next_page_token' is included. To get the next set of
  1657  	// results, call this method again using the value of 'next_page_token' as
  1658  	// 'page_token'.
  1659  	NextPageToken string `json:"nextPageToken,omitempty"`
  1660  	// Unreachable: Locations that could not be reached.
  1661  	Unreachable []string `json:"unreachable,omitempty"`
  1662  
  1663  	// ServerResponse contains the HTTP response code and headers from the server.
  1664  	googleapi.ServerResponse `json:"-"`
  1665  	// ForceSendFields is a list of field names (e.g. "GatewaySecurityPolicyRules")
  1666  	// to unconditionally include in API requests. By default, fields with empty or
  1667  	// default values are omitted from API requests. See
  1668  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1669  	// details.
  1670  	ForceSendFields []string `json:"-"`
  1671  	// NullFields is a list of field names (e.g. "GatewaySecurityPolicyRules") to
  1672  	// include in API requests with the JSON null value. By default, fields with
  1673  	// empty values are omitted from API requests. See
  1674  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1675  	NullFields []string `json:"-"`
  1676  }
  1677  
  1678  func (s *ListGatewaySecurityPolicyRulesResponse) MarshalJSON() ([]byte, error) {
  1679  	type NoMethod ListGatewaySecurityPolicyRulesResponse
  1680  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1681  }
  1682  
  1683  // ListLocationsResponse: The response message for Locations.ListLocations.
  1684  type ListLocationsResponse struct {
  1685  	// Locations: A list of locations that matches the specified filter in the
  1686  	// request.
  1687  	Locations []*Location `json:"locations,omitempty"`
  1688  	// NextPageToken: The standard List next-page token.
  1689  	NextPageToken string `json:"nextPageToken,omitempty"`
  1690  
  1691  	// ServerResponse contains the HTTP response code and headers from the server.
  1692  	googleapi.ServerResponse `json:"-"`
  1693  	// ForceSendFields is a list of field names (e.g. "Locations") to
  1694  	// unconditionally include in API requests. By default, fields with empty or
  1695  	// default values are omitted from API requests. See
  1696  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1697  	// details.
  1698  	ForceSendFields []string `json:"-"`
  1699  	// NullFields is a list of field names (e.g. "Locations") to include in API
  1700  	// requests with the JSON null value. By default, fields with empty values are
  1701  	// omitted from API requests. See
  1702  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1703  	NullFields []string `json:"-"`
  1704  }
  1705  
  1706  func (s *ListLocationsResponse) MarshalJSON() ([]byte, error) {
  1707  	type NoMethod ListLocationsResponse
  1708  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1709  }
  1710  
  1711  // ListOperationsResponse: The response message for Operations.ListOperations.
  1712  type ListOperationsResponse struct {
  1713  	// NextPageToken: The standard List next-page token.
  1714  	NextPageToken string `json:"nextPageToken,omitempty"`
  1715  	// Operations: A list of operations that matches the specified filter in the
  1716  	// request.
  1717  	Operations []*Operation `json:"operations,omitempty"`
  1718  
  1719  	// ServerResponse contains the HTTP response code and headers from the server.
  1720  	googleapi.ServerResponse `json:"-"`
  1721  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  1722  	// unconditionally include in API requests. By default, fields with empty or
  1723  	// default values are omitted from API requests. See
  1724  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1725  	// details.
  1726  	ForceSendFields []string `json:"-"`
  1727  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  1728  	// requests with the JSON null value. By default, fields with empty values are
  1729  	// omitted from API requests. See
  1730  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1731  	NullFields []string `json:"-"`
  1732  }
  1733  
  1734  func (s *ListOperationsResponse) MarshalJSON() ([]byte, error) {
  1735  	type NoMethod ListOperationsResponse
  1736  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1737  }
  1738  
  1739  // ListSecurityProfileGroupsResponse: Response returned by the
  1740  // ListSecurityProfileGroups method.
  1741  type ListSecurityProfileGroupsResponse struct {
  1742  	// NextPageToken: If there might be more results than those appearing in this
  1743  	// response, then `next_page_token` is included. To get the next set of
  1744  	// results, call this method again using the value of `next_page_token` as
  1745  	// `page_token`.
  1746  	NextPageToken string `json:"nextPageToken,omitempty"`
  1747  	// SecurityProfileGroups: List of SecurityProfileGroups resources.
  1748  	SecurityProfileGroups []*SecurityProfileGroup `json:"securityProfileGroups,omitempty"`
  1749  
  1750  	// ServerResponse contains the HTTP response code and headers from the server.
  1751  	googleapi.ServerResponse `json:"-"`
  1752  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  1753  	// unconditionally include in API requests. By default, fields with empty or
  1754  	// default values are omitted from API requests. See
  1755  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1756  	// details.
  1757  	ForceSendFields []string `json:"-"`
  1758  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  1759  	// requests with the JSON null value. By default, fields with empty values are
  1760  	// omitted from API requests. See
  1761  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1762  	NullFields []string `json:"-"`
  1763  }
  1764  
  1765  func (s *ListSecurityProfileGroupsResponse) MarshalJSON() ([]byte, error) {
  1766  	type NoMethod ListSecurityProfileGroupsResponse
  1767  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1768  }
  1769  
  1770  // ListSecurityProfilesResponse: Response returned by the ListSecurityProfiles
  1771  // method.
  1772  type ListSecurityProfilesResponse struct {
  1773  	// NextPageToken: If there might be more results than those appearing in this
  1774  	// response, then `next_page_token` is included. To get the next set of
  1775  	// results, call this method again using the value of `next_page_token` as
  1776  	// `page_token`.
  1777  	NextPageToken string `json:"nextPageToken,omitempty"`
  1778  	// SecurityProfiles: List of SecurityProfile resources.
  1779  	SecurityProfiles []*SecurityProfile `json:"securityProfiles,omitempty"`
  1780  
  1781  	// ServerResponse contains the HTTP response code and headers from the server.
  1782  	googleapi.ServerResponse `json:"-"`
  1783  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  1784  	// unconditionally include in API requests. By default, fields with empty or
  1785  	// default values are omitted from API requests. See
  1786  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1787  	// details.
  1788  	ForceSendFields []string `json:"-"`
  1789  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  1790  	// requests with the JSON null value. By default, fields with empty values are
  1791  	// omitted from API requests. See
  1792  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1793  	NullFields []string `json:"-"`
  1794  }
  1795  
  1796  func (s *ListSecurityProfilesResponse) MarshalJSON() ([]byte, error) {
  1797  	type NoMethod ListSecurityProfilesResponse
  1798  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1799  }
  1800  
  1801  // ListServerTlsPoliciesResponse: Response returned by the
  1802  // ListServerTlsPolicies method.
  1803  type ListServerTlsPoliciesResponse struct {
  1804  	// NextPageToken: If there might be more results than those appearing in this
  1805  	// response, then `next_page_token` is included. To get the next set of
  1806  	// results, call this method again using the value of `next_page_token` as
  1807  	// `page_token`.
  1808  	NextPageToken string `json:"nextPageToken,omitempty"`
  1809  	// ServerTlsPolicies: List of ServerTlsPolicy resources.
  1810  	ServerTlsPolicies []*ServerTlsPolicy `json:"serverTlsPolicies,omitempty"`
  1811  
  1812  	// ServerResponse contains the HTTP response code and headers from the server.
  1813  	googleapi.ServerResponse `json:"-"`
  1814  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  1815  	// unconditionally include in API requests. By default, fields with empty or
  1816  	// default values are omitted from 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. "NextPageToken") to include in API
  1821  	// requests with the JSON null value. By default, fields with empty values are
  1822  	// omitted from API requests. See
  1823  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1824  	NullFields []string `json:"-"`
  1825  }
  1826  
  1827  func (s *ListServerTlsPoliciesResponse) MarshalJSON() ([]byte, error) {
  1828  	type NoMethod ListServerTlsPoliciesResponse
  1829  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1830  }
  1831  
  1832  // ListTlsInspectionPoliciesResponse: Response returned by the
  1833  // ListTlsInspectionPolicies method.
  1834  type ListTlsInspectionPoliciesResponse struct {
  1835  	// NextPageToken: If there might be more results than those appearing in this
  1836  	// response, then 'next_page_token' is included. To get the next set of
  1837  	// results, call this method again using the value of 'next_page_token' as
  1838  	// 'page_token'.
  1839  	NextPageToken string `json:"nextPageToken,omitempty"`
  1840  	// TlsInspectionPolicies: List of TlsInspectionPolicies resources.
  1841  	TlsInspectionPolicies []*TlsInspectionPolicy `json:"tlsInspectionPolicies,omitempty"`
  1842  	// Unreachable: Locations that could not be reached.
  1843  	Unreachable []string `json:"unreachable,omitempty"`
  1844  
  1845  	// ServerResponse contains the HTTP response code and headers from the server.
  1846  	googleapi.ServerResponse `json:"-"`
  1847  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  1848  	// unconditionally include in API requests. By default, fields with empty or
  1849  	// default values are omitted from API requests. See
  1850  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1851  	// details.
  1852  	ForceSendFields []string `json:"-"`
  1853  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  1854  	// requests with the JSON null value. By default, fields with empty values are
  1855  	// omitted from API requests. See
  1856  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1857  	NullFields []string `json:"-"`
  1858  }
  1859  
  1860  func (s *ListTlsInspectionPoliciesResponse) MarshalJSON() ([]byte, error) {
  1861  	type NoMethod ListTlsInspectionPoliciesResponse
  1862  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1863  }
  1864  
  1865  // ListUrlListsResponse: Response returned by the ListUrlLists method.
  1866  type ListUrlListsResponse struct {
  1867  	// NextPageToken: If there might be more results than those appearing in this
  1868  	// response, then `next_page_token` is included. To get the next set of
  1869  	// results, call this method again using the value of `next_page_token` as
  1870  	// `page_token`.
  1871  	NextPageToken string `json:"nextPageToken,omitempty"`
  1872  	// Unreachable: Locations that could not be reached.
  1873  	Unreachable []string `json:"unreachable,omitempty"`
  1874  	// UrlLists: List of UrlList resources.
  1875  	UrlLists []*UrlList `json:"urlLists,omitempty"`
  1876  
  1877  	// ServerResponse contains the HTTP response code and headers from the server.
  1878  	googleapi.ServerResponse `json:"-"`
  1879  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  1880  	// unconditionally include in API requests. By default, fields with empty or
  1881  	// default values are omitted from API requests. See
  1882  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1883  	// details.
  1884  	ForceSendFields []string `json:"-"`
  1885  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  1886  	// requests with the JSON null value. By default, fields with empty values are
  1887  	// omitted from API requests. See
  1888  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1889  	NullFields []string `json:"-"`
  1890  }
  1891  
  1892  func (s *ListUrlListsResponse) MarshalJSON() ([]byte, error) {
  1893  	type NoMethod ListUrlListsResponse
  1894  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1895  }
  1896  
  1897  // Location: A resource that represents a Google Cloud location.
  1898  type Location struct {
  1899  	// DisplayName: The friendly name for this location, typically a nearby city
  1900  	// name. For example, "Tokyo".
  1901  	DisplayName string `json:"displayName,omitempty"`
  1902  	// Labels: Cross-service attributes for the location. For example
  1903  	// {"cloud.googleapis.com/region": "us-east1"}
  1904  	Labels map[string]string `json:"labels,omitempty"`
  1905  	// LocationId: The canonical id for this location. For example: "us-east1".
  1906  	LocationId string `json:"locationId,omitempty"`
  1907  	// Metadata: Service-specific metadata. For example the available capacity at
  1908  	// the given location.
  1909  	Metadata googleapi.RawMessage `json:"metadata,omitempty"`
  1910  	// Name: Resource name for the location, which may vary between
  1911  	// implementations. For example:
  1912  	// "projects/example-project/locations/us-east1"
  1913  	Name string `json:"name,omitempty"`
  1914  
  1915  	// ServerResponse contains the HTTP response code and headers from the server.
  1916  	googleapi.ServerResponse `json:"-"`
  1917  	// ForceSendFields is a list of field names (e.g. "DisplayName") to
  1918  	// unconditionally include in API requests. By default, fields with empty or
  1919  	// default values are omitted from API requests. See
  1920  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1921  	// details.
  1922  	ForceSendFields []string `json:"-"`
  1923  	// NullFields is a list of field names (e.g. "DisplayName") to include in API
  1924  	// requests with the JSON null value. By default, fields with empty values are
  1925  	// omitted from API requests. See
  1926  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1927  	NullFields []string `json:"-"`
  1928  }
  1929  
  1930  func (s *Location) MarshalJSON() ([]byte, error) {
  1931  	type NoMethod Location
  1932  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1933  }
  1934  
  1935  // MTLSPolicy: Specification of the MTLSPolicy.
  1936  type MTLSPolicy struct {
  1937  	// ClientValidationCa: Required if the policy is to be used with Traffic
  1938  	// Director. For external HTTPS load balancers it must be empty. Defines the
  1939  	// mechanism to obtain the Certificate Authority certificate to validate the
  1940  	// client certificate.
  1941  	ClientValidationCa []*ValidationCA `json:"clientValidationCa,omitempty"`
  1942  	// ClientValidationMode: When the client presents an invalid certificate or no
  1943  	// certificate to the load balancer, the `client_validation_mode` specifies how
  1944  	// the client connection is handled. Required if the policy is to be used with
  1945  	// the external HTTPS load balancing. For Traffic Director it must be empty.
  1946  	//
  1947  	// Possible values:
  1948  	//   "CLIENT_VALIDATION_MODE_UNSPECIFIED" - Not allowed.
  1949  	//   "ALLOW_INVALID_OR_MISSING_CLIENT_CERT" - Allow connection even if
  1950  	// certificate chain validation of the client certificate failed or no client
  1951  	// certificate was presented. The proof of possession of the private key is
  1952  	// always checked if client certificate was presented. This mode requires the
  1953  	// backend to implement processing of data extracted from a client certificate
  1954  	// to authenticate the peer, or to reject connections if the client certificate
  1955  	// fingerprint is missing.
  1956  	//   "REJECT_INVALID" - Require a client certificate and allow connection to
  1957  	// the backend only if validation of the client certificate passed. If set,
  1958  	// requires a reference to non-empty TrustConfig specified in
  1959  	// `client_validation_trust_config`.
  1960  	ClientValidationMode string `json:"clientValidationMode,omitempty"`
  1961  	// ClientValidationTrustConfig: Reference to the TrustConfig from
  1962  	// certificatemanager.googleapis.com namespace. If specified, the chain
  1963  	// validation will be performed against certificates configured in the given
  1964  	// TrustConfig. Allowed only if the policy is to be used with external HTTPS
  1965  	// load balancers.
  1966  	ClientValidationTrustConfig string `json:"clientValidationTrustConfig,omitempty"`
  1967  	// ForceSendFields is a list of field names (e.g. "ClientValidationCa") to
  1968  	// unconditionally include in API requests. By default, fields with empty or
  1969  	// default values are omitted from API requests. See
  1970  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1971  	// details.
  1972  	ForceSendFields []string `json:"-"`
  1973  	// NullFields is a list of field names (e.g. "ClientValidationCa") to include
  1974  	// in API requests with the JSON null value. By default, fields with empty
  1975  	// values are omitted from API requests. See
  1976  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1977  	NullFields []string `json:"-"`
  1978  }
  1979  
  1980  func (s *MTLSPolicy) MarshalJSON() ([]byte, error) {
  1981  	type NoMethod MTLSPolicy
  1982  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1983  }
  1984  
  1985  // Operation: This resource represents a long-running operation that is the
  1986  // result of a network API call.
  1987  type Operation struct {
  1988  	// Done: If the value is `false`, it means the operation is still in progress.
  1989  	// If `true`, the operation is completed, and either `error` or `response` is
  1990  	// available.
  1991  	Done bool `json:"done,omitempty"`
  1992  	// Error: The error result of the operation in case of failure or cancellation.
  1993  	Error *Status `json:"error,omitempty"`
  1994  	// Metadata: Service-specific metadata associated with the operation. It
  1995  	// typically contains progress information and common metadata such as create
  1996  	// time. Some services might not provide such metadata. Any method that returns
  1997  	// a long-running operation should document the metadata type, if any.
  1998  	Metadata googleapi.RawMessage `json:"metadata,omitempty"`
  1999  	// Name: The server-assigned name, which is only unique within the same service
  2000  	// that originally returns it. If you use the default HTTP mapping, the `name`
  2001  	// should be a resource name ending with `operations/{unique_id}`.
  2002  	Name string `json:"name,omitempty"`
  2003  	// Response: The normal, successful response of the operation. If the original
  2004  	// method returns no data on success, such as `Delete`, the response is
  2005  	// `google.protobuf.Empty`. If the original method is standard
  2006  	// `Get`/`Create`/`Update`, the response should be the resource. For other
  2007  	// methods, the response should have the type `XxxResponse`, where `Xxx` is the
  2008  	// original method name. For example, if the original method name is
  2009  	// `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
  2010  	Response googleapi.RawMessage `json:"response,omitempty"`
  2011  
  2012  	// ServerResponse contains the HTTP response code and headers from the server.
  2013  	googleapi.ServerResponse `json:"-"`
  2014  	// ForceSendFields is a list of field names (e.g. "Done") to unconditionally
  2015  	// include in API requests. By default, fields with empty or default values are
  2016  	// omitted from API requests. See
  2017  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2018  	// details.
  2019  	ForceSendFields []string `json:"-"`
  2020  	// NullFields is a list of field names (e.g. "Done") to include in API requests
  2021  	// with the JSON null value. By default, fields with empty values are omitted
  2022  	// from API requests. See
  2023  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2024  	NullFields []string `json:"-"`
  2025  }
  2026  
  2027  func (s *Operation) MarshalJSON() ([]byte, error) {
  2028  	type NoMethod Operation
  2029  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2030  }
  2031  
  2032  // OperationMetadata: Represents the metadata of the long-running operation.
  2033  type OperationMetadata struct {
  2034  	// ApiVersion: Output only. API version used to start the operation.
  2035  	ApiVersion string `json:"apiVersion,omitempty"`
  2036  	// CreateTime: Output only. The time the operation was created.
  2037  	CreateTime string `json:"createTime,omitempty"`
  2038  	// EndTime: Output only. The time the operation finished running.
  2039  	EndTime string `json:"endTime,omitempty"`
  2040  	// RequestedCancellation: Output only. Identifies whether the user has
  2041  	// requested cancellation of the operation. Operations that have successfully
  2042  	// been cancelled have Operation.error value with a google.rpc.Status.code of
  2043  	// 1, corresponding to `Code.CANCELLED`.
  2044  	RequestedCancellation bool `json:"requestedCancellation,omitempty"`
  2045  	// StatusMessage: Output only. Human-readable status of the operation, if any.
  2046  	StatusMessage string `json:"statusMessage,omitempty"`
  2047  	// Target: Output only. Server-defined resource path for the target of the
  2048  	// operation.
  2049  	Target string `json:"target,omitempty"`
  2050  	// Verb: Output only. Name of the verb executed by the operation.
  2051  	Verb string `json:"verb,omitempty"`
  2052  	// ForceSendFields is a list of field names (e.g. "ApiVersion") to
  2053  	// unconditionally include in API requests. By default, fields with empty or
  2054  	// default values are omitted from API requests. See
  2055  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2056  	// details.
  2057  	ForceSendFields []string `json:"-"`
  2058  	// NullFields is a list of field names (e.g. "ApiVersion") to include in API
  2059  	// requests with the JSON null value. By default, fields with empty values are
  2060  	// omitted from API requests. See
  2061  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2062  	NullFields []string `json:"-"`
  2063  }
  2064  
  2065  func (s *OperationMetadata) MarshalJSON() ([]byte, error) {
  2066  	type NoMethod OperationMetadata
  2067  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2068  }
  2069  
  2070  // RemoveAddressGroupItemsRequest: Request used by the RemoveAddressGroupItems
  2071  // method.
  2072  type RemoveAddressGroupItemsRequest struct {
  2073  	// Items: Required. List of items to remove.
  2074  	Items []string `json:"items,omitempty"`
  2075  	// RequestId: Optional. An optional request ID to identify requests. Specify a
  2076  	// unique request ID so that if you must retry your request, the server will
  2077  	// know to ignore the request if it has already been completed. The server will
  2078  	// guarantee that for at least 60 minutes since the first request. For example,
  2079  	// consider a situation where you make an initial request and the request times
  2080  	// out. If you make the request again with the same request ID, the server can
  2081  	// check if original operation with the same request ID was received, and if
  2082  	// so, will ignore the second request. This prevents clients from accidentally
  2083  	// creating duplicate commitments. The request ID must be a valid UUID with the
  2084  	// exception that zero UUID is not supported
  2085  	// (00000000-0000-0000-0000-000000000000).
  2086  	RequestId string `json:"requestId,omitempty"`
  2087  	// ForceSendFields is a list of field names (e.g. "Items") to unconditionally
  2088  	// include in API requests. By default, fields with empty or default values are
  2089  	// omitted from API requests. See
  2090  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2091  	// details.
  2092  	ForceSendFields []string `json:"-"`
  2093  	// NullFields is a list of field names (e.g. "Items") to include in API
  2094  	// requests with the JSON null value. By default, fields with empty values are
  2095  	// omitted from API requests. See
  2096  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2097  	NullFields []string `json:"-"`
  2098  }
  2099  
  2100  func (s *RemoveAddressGroupItemsRequest) MarshalJSON() ([]byte, error) {
  2101  	type NoMethod RemoveAddressGroupItemsRequest
  2102  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2103  }
  2104  
  2105  // Rule: Specification of rules.
  2106  type Rule struct {
  2107  	// Destinations: Optional. List of attributes for the traffic destination. All
  2108  	// of the destinations must match. A destination is a match if a request
  2109  	// matches all the specified hosts, ports, methods and headers. If not set, the
  2110  	// action specified in the 'action' field will be applied without any rule
  2111  	// checks for the destination.
  2112  	Destinations []*Destination `json:"destinations,omitempty"`
  2113  	// Sources: Optional. List of attributes for the traffic source. All of the
  2114  	// sources must match. A source is a match if both principals and ip_blocks
  2115  	// match. If not set, the action specified in the 'action' field will be
  2116  	// applied without any rule checks for the source.
  2117  	Sources []*Source `json:"sources,omitempty"`
  2118  	// ForceSendFields is a list of field names (e.g. "Destinations") to
  2119  	// unconditionally include in API requests. By default, fields with empty or
  2120  	// default values are omitted from API requests. See
  2121  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2122  	// details.
  2123  	ForceSendFields []string `json:"-"`
  2124  	// NullFields is a list of field names (e.g. "Destinations") to include in API
  2125  	// requests with the JSON null value. By default, fields with empty values are
  2126  	// omitted from API requests. See
  2127  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2128  	NullFields []string `json:"-"`
  2129  }
  2130  
  2131  func (s *Rule) MarshalJSON() ([]byte, error) {
  2132  	type NoMethod Rule
  2133  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2134  }
  2135  
  2136  // SecurityProfile: SecurityProfile is a resource that defines the behavior for
  2137  // one of many ProfileTypes. Next ID: 10
  2138  type SecurityProfile struct {
  2139  	// CreateTime: Output only. Resource creation timestamp.
  2140  	CreateTime string `json:"createTime,omitempty"`
  2141  	// Description: Optional. An optional description of the profile. Max length
  2142  	// 512 characters.
  2143  	Description string `json:"description,omitempty"`
  2144  	// Etag: Output only. This checksum is computed by the server based on the
  2145  	// value of other fields, and may be sent on update and delete requests to
  2146  	// ensure the client has an up-to-date value before proceeding.
  2147  	Etag string `json:"etag,omitempty"`
  2148  	// Labels: Optional. Labels as key value pairs.
  2149  	Labels map[string]string `json:"labels,omitempty"`
  2150  	// Name: Immutable. Identifier. Name of the SecurityProfile resource. It
  2151  	// matches pattern
  2152  	// `projects|organizations/*/locations/{location}/securityProfiles/{security_pro
  2153  	// file}`.
  2154  	Name string `json:"name,omitempty"`
  2155  	// ThreatPreventionProfile: The threat prevention configuration for the
  2156  	// SecurityProfile.
  2157  	ThreatPreventionProfile *ThreatPreventionProfile `json:"threatPreventionProfile,omitempty"`
  2158  	// Type: Immutable. The single ProfileType that the SecurityProfile resource
  2159  	// configures.
  2160  	//
  2161  	// Possible values:
  2162  	//   "PROFILE_TYPE_UNSPECIFIED" - Profile type not specified.
  2163  	//   "THREAT_PREVENTION" - Profile type for threat prevention.
  2164  	Type string `json:"type,omitempty"`
  2165  	// UpdateTime: Output only. Last resource update timestamp.
  2166  	UpdateTime string `json:"updateTime,omitempty"`
  2167  
  2168  	// ServerResponse contains the HTTP response code and headers from the server.
  2169  	googleapi.ServerResponse `json:"-"`
  2170  	// ForceSendFields is a list of field names (e.g. "CreateTime") to
  2171  	// unconditionally include in API requests. By default, fields with empty or
  2172  	// default values are omitted from API requests. See
  2173  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2174  	// details.
  2175  	ForceSendFields []string `json:"-"`
  2176  	// NullFields is a list of field names (e.g. "CreateTime") to include in API
  2177  	// requests with the JSON null value. By default, fields with empty values are
  2178  	// omitted from API requests. See
  2179  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2180  	NullFields []string `json:"-"`
  2181  }
  2182  
  2183  func (s *SecurityProfile) MarshalJSON() ([]byte, error) {
  2184  	type NoMethod SecurityProfile
  2185  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2186  }
  2187  
  2188  // SecurityProfileGroup: SecurityProfileGroup is a resource that defines the
  2189  // behavior for various ProfileTypes. Next ID: 9
  2190  type SecurityProfileGroup struct {
  2191  	// CreateTime: Output only. Resource creation timestamp.
  2192  	CreateTime string `json:"createTime,omitempty"`
  2193  	// Description: Optional. An optional description of the profile group. Max
  2194  	// length 2048 characters.
  2195  	Description string `json:"description,omitempty"`
  2196  	// Etag: Output only. This checksum is computed by the server based on the
  2197  	// value of other fields, and may be sent on update and delete requests to
  2198  	// ensure the client has an up-to-date value before proceeding.
  2199  	Etag string `json:"etag,omitempty"`
  2200  	// Labels: Optional. Labels as key value pairs.
  2201  	Labels map[string]string `json:"labels,omitempty"`
  2202  	// Name: Immutable. Identifier. Name of the SecurityProfileGroup resource. It
  2203  	// matches pattern
  2204  	// `projects|organizations/*/locations/{location}/securityProfileGroups/{securit
  2205  	// y_profile_group}`.
  2206  	Name string `json:"name,omitempty"`
  2207  	// ThreatPreventionProfile: Optional. Reference to a SecurityProfile with the
  2208  	// threat prevention configuration for the SecurityProfileGroup.
  2209  	ThreatPreventionProfile string `json:"threatPreventionProfile,omitempty"`
  2210  	// UpdateTime: Output only. Last resource update timestamp.
  2211  	UpdateTime string `json:"updateTime,omitempty"`
  2212  
  2213  	// ServerResponse contains the HTTP response code and headers from the server.
  2214  	googleapi.ServerResponse `json:"-"`
  2215  	// ForceSendFields is a list of field names (e.g. "CreateTime") to
  2216  	// unconditionally include in API requests. By default, fields with empty or
  2217  	// default values are omitted from API requests. See
  2218  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2219  	// details.
  2220  	ForceSendFields []string `json:"-"`
  2221  	// NullFields is a list of field names (e.g. "CreateTime") to include in API
  2222  	// requests with the JSON null value. By default, fields with empty values are
  2223  	// omitted from API requests. See
  2224  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2225  	NullFields []string `json:"-"`
  2226  }
  2227  
  2228  func (s *SecurityProfileGroup) MarshalJSON() ([]byte, error) {
  2229  	type NoMethod SecurityProfileGroup
  2230  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2231  }
  2232  
  2233  // ServerTlsPolicy: ServerTlsPolicy is a resource that specifies how a server
  2234  // should authenticate incoming requests. This resource itself does not affect
  2235  // configuration unless it is attached to a target HTTPS proxy or endpoint
  2236  // config selector resource. ServerTlsPolicy in the form accepted by external
  2237  // HTTPS load balancers can be attached only to TargetHttpsProxy with an
  2238  // `EXTERNAL` or `EXTERNAL_MANAGED` load balancing scheme. Traffic Director
  2239  // compatible ServerTlsPolicies can be attached to EndpointPolicy and
  2240  // TargetHttpsProxy with Traffic Director `INTERNAL_SELF_MANAGED` load
  2241  // balancing scheme.
  2242  type ServerTlsPolicy struct {
  2243  	// AllowOpen: This field applies only for Traffic Director policies. It is must
  2244  	// be set to false for external HTTPS load balancer policies. Determines if
  2245  	// server allows plaintext connections. If set to true, server allows plain
  2246  	// text connections. By default, it is set to false. This setting is not
  2247  	// exclusive of other encryption modes. For example, if `allow_open` and
  2248  	// `mtls_policy` are set, server allows both plain text and mTLS connections.
  2249  	// See documentation of other encryption modes to confirm compatibility.
  2250  	// Consider using it if you wish to upgrade in place your deployment to TLS
  2251  	// while having mixed TLS and non-TLS traffic reaching port :80.
  2252  	AllowOpen bool `json:"allowOpen,omitempty"`
  2253  	// CreateTime: Output only. The timestamp when the resource was created.
  2254  	CreateTime string `json:"createTime,omitempty"`
  2255  	// Description: Free-text description of the resource.
  2256  	Description string `json:"description,omitempty"`
  2257  	// Labels: Set of label tags associated with the resource.
  2258  	Labels map[string]string `json:"labels,omitempty"`
  2259  	// MtlsPolicy: This field is required if the policy is used with external HTTPS
  2260  	// load balancers. This field can be empty for Traffic Director. Defines a
  2261  	// mechanism to provision peer validation certificates for peer to peer
  2262  	// authentication (Mutual TLS - mTLS). If not specified, client certificate
  2263  	// will not be requested. The connection is treated as TLS and not mTLS. If
  2264  	// `allow_open` and `mtls_policy` are set, server allows both plain text and
  2265  	// mTLS connections.
  2266  	MtlsPolicy *MTLSPolicy `json:"mtlsPolicy,omitempty"`
  2267  	// Name: Required. Name of the ServerTlsPolicy resource. It matches the pattern
  2268  	// `projects/*/locations/{location}/serverTlsPolicies/{server_tls_policy}`
  2269  	Name string `json:"name,omitempty"`
  2270  	// ServerCertificate: Optional if policy is to be used with Traffic Director.
  2271  	// For external HTTPS load balancer must be empty. Defines a mechanism to
  2272  	// provision server identity (public and private keys). Cannot be combined with
  2273  	// `allow_open` as a permissive mode that allows both plain text and TLS is not
  2274  	// supported.
  2275  	ServerCertificate *GoogleCloudNetworksecurityV1CertificateProvider `json:"serverCertificate,omitempty"`
  2276  	// UpdateTime: Output only. The timestamp when the resource was updated.
  2277  	UpdateTime string `json:"updateTime,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. "AllowOpen") to
  2282  	// unconditionally include in API requests. By default, fields with empty or
  2283  	// default values are 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. "AllowOpen") to include in API
  2288  	// requests with the JSON null value. By default, fields with empty values are
  2289  	// omitted 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 *ServerTlsPolicy) MarshalJSON() ([]byte, error) {
  2295  	type NoMethod ServerTlsPolicy
  2296  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2297  }
  2298  
  2299  // SeverityOverride: Defines what action to take for a specific severity match.
  2300  type SeverityOverride struct {
  2301  	// Action: Required. Threat action override.
  2302  	//
  2303  	// Possible values:
  2304  	//   "THREAT_ACTION_UNSPECIFIED" - Threat action not specified.
  2305  	//   "DEFAULT_ACTION" - The default action (as specified by the vendor) is
  2306  	// taken.
  2307  	//   "ALLOW" - The packet matching this rule will be allowed to transmit.
  2308  	//   "ALERT" - The packet matching this rule will be allowed to transmit, but a
  2309  	// threat_log entry will be sent to the consumer project.
  2310  	//   "DENY" - The packet matching this rule will be dropped, and a threat_log
  2311  	// entry will be sent to the consumer project.
  2312  	Action string `json:"action,omitempty"`
  2313  	// Severity: Required. Severity level to match.
  2314  	//
  2315  	// Possible values:
  2316  	//   "SEVERITY_UNSPECIFIED" - Severity level not specified.
  2317  	//   "INFORMATIONAL" - Suspicious events that do not pose an immediate threat,
  2318  	// but that are reported to call attention to deeper problems that could
  2319  	// possibly exist.
  2320  	//   "LOW" - Warning-level threats that have very little impact on an
  2321  	// organization's infrastructure. They usually require local or physical system
  2322  	// access and may often result in victim privacy issues and information
  2323  	// leakage.
  2324  	//   "MEDIUM" - Minor threats in which impact is minimized, that do not
  2325  	// compromise the target or exploits that require an attacker to reside on the
  2326  	// same local network as the victim, affect only non-standard configurations or
  2327  	// obscure applications, or provide very limited access.
  2328  	//   "HIGH" - Threats that have the ability to become critical but have
  2329  	// mitigating factors; for example, they may be difficult to exploit, do not
  2330  	// result in elevated privileges, or do not have a large victim pool.
  2331  	//   "CRITICAL" - Serious threats, such as those that affect default
  2332  	// installations of widely deployed software, result in root compromise of
  2333  	// servers, and the exploit code is widely available to attackers. The attacker
  2334  	// usually does not need any special authentication credentials or knowledge
  2335  	// about the individual victims and the target does not need to be manipulated
  2336  	// into performing any special functions.
  2337  	Severity string `json:"severity,omitempty"`
  2338  	// ForceSendFields is a list of field names (e.g. "Action") to unconditionally
  2339  	// include in API requests. By default, fields with empty or default values are
  2340  	// omitted from API requests. See
  2341  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2342  	// details.
  2343  	ForceSendFields []string `json:"-"`
  2344  	// NullFields is a list of field names (e.g. "Action") to include in API
  2345  	// requests with the JSON null value. By default, fields with empty values are
  2346  	// omitted from API requests. See
  2347  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2348  	NullFields []string `json:"-"`
  2349  }
  2350  
  2351  func (s *SeverityOverride) MarshalJSON() ([]byte, error) {
  2352  	type NoMethod SeverityOverride
  2353  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2354  }
  2355  
  2356  // Source: Specification of traffic source attributes.
  2357  type Source struct {
  2358  	// IpBlocks: Optional. List of CIDR ranges to match based on source IP address.
  2359  	// At least one IP block should match. Single IP (e.g., "1.2.3.4") and CIDR
  2360  	// (e.g., "1.2.3.0/24") are supported. Authorization based on source IP alone
  2361  	// should be avoided. The IP addresses of any load balancers or proxies should
  2362  	// be considered untrusted.
  2363  	IpBlocks []string `json:"ipBlocks,omitempty"`
  2364  	// Principals: Optional. List of peer identities to match for authorization. At
  2365  	// least one principal should match. Each peer can be an exact match, or a
  2366  	// prefix match (example, "namespace/*") or a suffix match (example,
  2367  	// "*/service-account") or a presence match "*". Authorization based on the
  2368  	// principal name without certificate validation (configured by ServerTlsPolicy
  2369  	// resource) is considered insecure.
  2370  	Principals []string `json:"principals,omitempty"`
  2371  	// ForceSendFields is a list of field names (e.g. "IpBlocks") to
  2372  	// unconditionally include in API requests. By default, fields with empty or
  2373  	// default values are omitted from API requests. See
  2374  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2375  	// details.
  2376  	ForceSendFields []string `json:"-"`
  2377  	// NullFields is a list of field names (e.g. "IpBlocks") to include in API
  2378  	// requests with the JSON null value. By default, fields with empty values are
  2379  	// omitted from API requests. See
  2380  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2381  	NullFields []string `json:"-"`
  2382  }
  2383  
  2384  func (s *Source) MarshalJSON() ([]byte, error) {
  2385  	type NoMethod Source
  2386  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2387  }
  2388  
  2389  // Status: The `Status` type defines a logical error model that is suitable for
  2390  // different programming environments, including REST APIs and RPC APIs. It is
  2391  // used by gRPC (https://github.com/grpc). Each `Status` message contains three
  2392  // pieces of data: error code, error message, and error details. You can find
  2393  // out more about this error model and how to work with it in the API Design
  2394  // Guide (https://cloud.google.com/apis/design/errors).
  2395  type Status struct {
  2396  	// Code: The status code, which should be an enum value of google.rpc.Code.
  2397  	Code int64 `json:"code,omitempty"`
  2398  	// Details: A list of messages that carry the error details. There is a common
  2399  	// set of message types for APIs to use.
  2400  	Details []googleapi.RawMessage `json:"details,omitempty"`
  2401  	// Message: A developer-facing error message, which should be in English. Any
  2402  	// user-facing error message should be localized and sent in the
  2403  	// google.rpc.Status.details field, or localized by the client.
  2404  	Message string `json:"message,omitempty"`
  2405  	// ForceSendFields is a list of field names (e.g. "Code") to unconditionally
  2406  	// include in API requests. By default, fields with empty or default values are
  2407  	// omitted from API requests. See
  2408  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2409  	// details.
  2410  	ForceSendFields []string `json:"-"`
  2411  	// NullFields is a list of field names (e.g. "Code") to include in API requests
  2412  	// with the JSON null value. By default, fields with empty values are omitted
  2413  	// from API requests. See
  2414  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2415  	NullFields []string `json:"-"`
  2416  }
  2417  
  2418  func (s *Status) MarshalJSON() ([]byte, error) {
  2419  	type NoMethod Status
  2420  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2421  }
  2422  
  2423  // ThreatOverride: Defines what action to take for a specific threat_id match.
  2424  type ThreatOverride struct {
  2425  	// Action: Required. Threat action override. For some threat types, only a
  2426  	// subset of actions applies.
  2427  	//
  2428  	// Possible values:
  2429  	//   "THREAT_ACTION_UNSPECIFIED" - Threat action not specified.
  2430  	//   "DEFAULT_ACTION" - The default action (as specified by the vendor) is
  2431  	// taken.
  2432  	//   "ALLOW" - The packet matching this rule will be allowed to transmit.
  2433  	//   "ALERT" - The packet matching this rule will be allowed to transmit, but a
  2434  	// threat_log entry will be sent to the consumer project.
  2435  	//   "DENY" - The packet matching this rule will be dropped, and a threat_log
  2436  	// entry will be sent to the consumer project.
  2437  	Action string `json:"action,omitempty"`
  2438  	// ThreatId: Required. Vendor-specific ID of a threat to override.
  2439  	ThreatId string `json:"threatId,omitempty"`
  2440  	// Type: Output only. Type of the threat (read only).
  2441  	//
  2442  	// Possible values:
  2443  	//   "THREAT_TYPE_UNSPECIFIED" - Type of threat not specified.
  2444  	//   "UNKNOWN" - Type of threat is not derivable from threat ID. An override
  2445  	// will be created for all types. Firewall will ignore overridden signature
  2446  	// ID's that don't exist in the specific type.
  2447  	//   "VULNERABILITY" - Threats related to system flaws that an attacker might
  2448  	// otherwise attempt to exploit.
  2449  	//   "ANTIVIRUS" - Threats related to viruses and malware found in executables
  2450  	// and file types.
  2451  	//   "SPYWARE" - Threats related to command-and-control (C2) activity, where
  2452  	// spyware on an infected client is collecting data without the user's consent
  2453  	// and/or communicating with a remote attacker.
  2454  	//   "DNS" - Threats related to DNS.
  2455  	Type string `json:"type,omitempty"`
  2456  	// ForceSendFields is a list of field names (e.g. "Action") to unconditionally
  2457  	// include in API requests. By default, fields with empty or default values are
  2458  	// omitted from API requests. See
  2459  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2460  	// details.
  2461  	ForceSendFields []string `json:"-"`
  2462  	// NullFields is a list of field names (e.g. "Action") to include in API
  2463  	// requests with the JSON null value. By default, fields with empty values are
  2464  	// omitted from API requests. See
  2465  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2466  	NullFields []string `json:"-"`
  2467  }
  2468  
  2469  func (s *ThreatOverride) MarshalJSON() ([]byte, error) {
  2470  	type NoMethod ThreatOverride
  2471  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2472  }
  2473  
  2474  // ThreatPreventionProfile: ThreatPreventionProfile defines an action for
  2475  // specific threat signatures or severity levels.
  2476  type ThreatPreventionProfile struct {
  2477  	// SeverityOverrides: Optional. Configuration for overriding threats actions by
  2478  	// severity match.
  2479  	SeverityOverrides []*SeverityOverride `json:"severityOverrides,omitempty"`
  2480  	// ThreatOverrides: Optional. Configuration for overriding threats actions by
  2481  	// threat_id match. If a threat is matched both by configuration provided in
  2482  	// severity_overrides and threat_overrides, the threat_overrides action is
  2483  	// applied.
  2484  	ThreatOverrides []*ThreatOverride `json:"threatOverrides,omitempty"`
  2485  	// ForceSendFields is a list of field names (e.g. "SeverityOverrides") to
  2486  	// unconditionally include in API requests. By default, fields with empty or
  2487  	// default values are omitted from API requests. See
  2488  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2489  	// details.
  2490  	ForceSendFields []string `json:"-"`
  2491  	// NullFields is a list of field names (e.g. "SeverityOverrides") to include in
  2492  	// API requests with the JSON null value. By default, fields with empty values
  2493  	// are omitted from API requests. See
  2494  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2495  	NullFields []string `json:"-"`
  2496  }
  2497  
  2498  func (s *ThreatPreventionProfile) MarshalJSON() ([]byte, error) {
  2499  	type NoMethod ThreatPreventionProfile
  2500  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2501  }
  2502  
  2503  // TlsInspectionPolicy: The TlsInspectionPolicy resource contains references to
  2504  // CA pools in Certificate Authority Service and associated metadata.
  2505  type TlsInspectionPolicy struct {
  2506  	// CaPool: Required. A CA pool resource used to issue interception
  2507  	// certificates. The CA pool string has a relative resource path following the
  2508  	// form "projects/{project}/locations/{location}/caPools/{ca_pool}".
  2509  	CaPool string `json:"caPool,omitempty"`
  2510  	// CreateTime: Output only. The timestamp when the resource was created.
  2511  	CreateTime string `json:"createTime,omitempty"`
  2512  	// CustomTlsFeatures: Optional. List of custom TLS cipher suites selected. This
  2513  	// field is valid only if the selected tls_feature_profile is CUSTOM. The
  2514  	// compute.SslPoliciesService.ListAvailableFeatures method returns the set of
  2515  	// features that can be specified in this list. Note that Secure Web Proxy does
  2516  	// not yet honor this field.
  2517  	CustomTlsFeatures []string `json:"customTlsFeatures,omitempty"`
  2518  	// Description: Optional. Free-text description of the resource.
  2519  	Description string `json:"description,omitempty"`
  2520  	// ExcludePublicCaSet: Optional. If FALSE (the default), use our default set of
  2521  	// public CAs in addition to any CAs specified in trust_config. These public
  2522  	// CAs are currently based on the Mozilla Root Program and are subject to
  2523  	// change over time. If TRUE, do not accept our default set of public CAs. Only
  2524  	// CAs specified in trust_config will be accepted. This defaults to FALSE (use
  2525  	// public CAs in addition to trust_config) for backwards compatibility, but
  2526  	// trusting public root CAs is *not recommended* unless the traffic in question
  2527  	// is outbound to public web servers. When possible, prefer setting this to
  2528  	// "false" and explicitly specifying trusted CAs and certificates in a
  2529  	// TrustConfig. Note that Secure Web Proxy does not yet honor this field.
  2530  	ExcludePublicCaSet bool `json:"excludePublicCaSet,omitempty"`
  2531  	// MinTlsVersion: Optional. Minimum TLS version that the firewall should use
  2532  	// when negotiating connections with both clients and servers. If this is not
  2533  	// set, then the default value is to allow the broadest set of clients and
  2534  	// servers (TLS 1.0 or higher). Setting this to more restrictive values may
  2535  	// improve security, but may also prevent the firewall from connecting to some
  2536  	// clients or servers. Note that Secure Web Proxy does not yet honor this
  2537  	// field.
  2538  	//
  2539  	// Possible values:
  2540  	//   "TLS_VERSION_UNSPECIFIED" - Indicates no TLS version was specified.
  2541  	//   "TLS_1_0" - TLS 1.0
  2542  	//   "TLS_1_1" - TLS 1.1
  2543  	//   "TLS_1_2" - TLS 1.2
  2544  	//   "TLS_1_3" - TLS 1.3
  2545  	MinTlsVersion string `json:"minTlsVersion,omitempty"`
  2546  	// Name: Required. Name of the resource. Name is of the form
  2547  	// projects/{project}/locations/{location}/tlsInspectionPolicies/{tls_inspection
  2548  	// _policy} tls_inspection_policy should match the pattern:(^a-z
  2549  	// ([a-z0-9-]{0,61}[a-z0-9])?$).
  2550  	Name string `json:"name,omitempty"`
  2551  	// TlsFeatureProfile: Optional. The selected Profile. If this is not set, then
  2552  	// the default value is to allow the broadest set of clients and servers
  2553  	// ("PROFILE_COMPATIBLE"). Setting this to more restrictive values may improve
  2554  	// security, but may also prevent the TLS inspection proxy from connecting to
  2555  	// some clients or servers. Note that Secure Web Proxy does not yet honor this
  2556  	// field.
  2557  	//
  2558  	// Possible values:
  2559  	//   "PROFILE_UNSPECIFIED" - Indicates no profile was specified.
  2560  	//   "PROFILE_COMPATIBLE" - Compatible profile. Allows the broadest set of
  2561  	// clients, even those which support only out-of-date SSL features to negotiate
  2562  	// with the TLS inspection proxy.
  2563  	//   "PROFILE_MODERN" - Modern profile. Supports a wide set of SSL features,
  2564  	// allowing modern clients to negotiate SSL with the TLS inspection proxy.
  2565  	//   "PROFILE_RESTRICTED" - Restricted profile. Supports a reduced set of SSL
  2566  	// features, intended to meet stricter compliance requirements.
  2567  	//   "PROFILE_CUSTOM" - Custom profile. Allow only the set of allowed SSL
  2568  	// features specified in the custom_features field of SslPolicy.
  2569  	TlsFeatureProfile string `json:"tlsFeatureProfile,omitempty"`
  2570  	// TrustConfig: Optional. A TrustConfig resource used when making a connection
  2571  	// to the TLS server. This is a relative resource path following the form
  2572  	// "projects/{project}/locations/{location}/trustConfigs/{trust_config}". This
  2573  	// is necessary to intercept TLS connections to servers with certificates
  2574  	// signed by a private CA or self-signed certificates. Note that Secure Web
  2575  	// Proxy does not yet honor this field.
  2576  	TrustConfig string `json:"trustConfig,omitempty"`
  2577  	// UpdateTime: Output only. The timestamp when the resource was updated.
  2578  	UpdateTime string `json:"updateTime,omitempty"`
  2579  
  2580  	// ServerResponse contains the HTTP response code and headers from the server.
  2581  	googleapi.ServerResponse `json:"-"`
  2582  	// ForceSendFields is a list of field names (e.g. "CaPool") to unconditionally
  2583  	// include in API requests. By default, fields with empty or default values are
  2584  	// omitted from API requests. See
  2585  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2586  	// details.
  2587  	ForceSendFields []string `json:"-"`
  2588  	// NullFields is a list of field names (e.g. "CaPool") to include in API
  2589  	// requests with the JSON null value. By default, fields with empty values are
  2590  	// omitted from API requests. See
  2591  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2592  	NullFields []string `json:"-"`
  2593  }
  2594  
  2595  func (s *TlsInspectionPolicy) MarshalJSON() ([]byte, error) {
  2596  	type NoMethod TlsInspectionPolicy
  2597  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2598  }
  2599  
  2600  // UrlList: UrlList proto helps users to set reusable, independently manageable
  2601  // lists of hosts, host patterns, URLs, URL patterns.
  2602  type UrlList struct {
  2603  	// CreateTime: Output only. Time when the security policy was created.
  2604  	CreateTime string `json:"createTime,omitempty"`
  2605  	// Description: Optional. Free-text description of the resource.
  2606  	Description string `json:"description,omitempty"`
  2607  	// Name: Required. Name of the resource provided by the user. Name is of the
  2608  	// form projects/{project}/locations/{location}/urlLists/{url_list} url_list
  2609  	// should match the pattern:(^a-z ([a-z0-9-]{0,61}[a-z0-9])?$).
  2610  	Name string `json:"name,omitempty"`
  2611  	// UpdateTime: Output only. Time when the security policy was updated.
  2612  	UpdateTime string `json:"updateTime,omitempty"`
  2613  	// Values: Required. FQDNs and URLs.
  2614  	Values []string `json:"values,omitempty"`
  2615  
  2616  	// ServerResponse contains the HTTP response code and headers from the server.
  2617  	googleapi.ServerResponse `json:"-"`
  2618  	// ForceSendFields is a list of field names (e.g. "CreateTime") to
  2619  	// unconditionally include in API requests. By default, fields with empty or
  2620  	// default values are omitted from API requests. See
  2621  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2622  	// details.
  2623  	ForceSendFields []string `json:"-"`
  2624  	// NullFields is a list of field names (e.g. "CreateTime") to include in API
  2625  	// requests with the JSON null value. By default, fields with empty values are
  2626  	// omitted from API requests. See
  2627  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2628  	NullFields []string `json:"-"`
  2629  }
  2630  
  2631  func (s *UrlList) MarshalJSON() ([]byte, error) {
  2632  	type NoMethod UrlList
  2633  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2634  }
  2635  
  2636  // ValidationCA: Specification of ValidationCA. Defines the mechanism to obtain
  2637  // the Certificate Authority certificate to validate the peer certificate.
  2638  type ValidationCA struct {
  2639  	// CertificateProviderInstance: The certificate provider instance specification
  2640  	// that will be passed to the data plane, which will be used to load necessary
  2641  	// credential information.
  2642  	CertificateProviderInstance *CertificateProviderInstance `json:"certificateProviderInstance,omitempty"`
  2643  	// GrpcEndpoint: gRPC specific configuration to access the gRPC server to
  2644  	// obtain the CA certificate.
  2645  	GrpcEndpoint *GoogleCloudNetworksecurityV1GrpcEndpoint `json:"grpcEndpoint,omitempty"`
  2646  	// ForceSendFields is a list of field names (e.g.
  2647  	// "CertificateProviderInstance") to unconditionally include in API requests.
  2648  	// By default, fields with empty or default values are omitted from API
  2649  	// requests. See https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields
  2650  	// for more details.
  2651  	ForceSendFields []string `json:"-"`
  2652  	// NullFields is a list of field names (e.g. "CertificateProviderInstance") to
  2653  	// include in API requests with the JSON null value. By default, fields with
  2654  	// empty values are omitted from API requests. See
  2655  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2656  	NullFields []string `json:"-"`
  2657  }
  2658  
  2659  func (s *ValidationCA) MarshalJSON() ([]byte, error) {
  2660  	type NoMethod ValidationCA
  2661  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2662  }
  2663  
  2664  type OrganizationsLocationsAddressGroupsAddItemsCall struct {
  2665  	s                           *Service
  2666  	addressGroup                string
  2667  	addaddressgroupitemsrequest *AddAddressGroupItemsRequest
  2668  	urlParams_                  gensupport.URLParams
  2669  	ctx_                        context.Context
  2670  	header_                     http.Header
  2671  }
  2672  
  2673  // AddItems: Adds items to an address group.
  2674  //
  2675  //   - addressGroup: A name of the AddressGroup to add items to. Must be in the
  2676  //     format `projects|organization/*/locations/{location}/addressGroups/*`.
  2677  func (r *OrganizationsLocationsAddressGroupsService) AddItems(addressGroup string, addaddressgroupitemsrequest *AddAddressGroupItemsRequest) *OrganizationsLocationsAddressGroupsAddItemsCall {
  2678  	c := &OrganizationsLocationsAddressGroupsAddItemsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  2679  	c.addressGroup = addressGroup
  2680  	c.addaddressgroupitemsrequest = addaddressgroupitemsrequest
  2681  	return c
  2682  }
  2683  
  2684  // Fields allows partial responses to be retrieved. See
  2685  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  2686  // details.
  2687  func (c *OrganizationsLocationsAddressGroupsAddItemsCall) Fields(s ...googleapi.Field) *OrganizationsLocationsAddressGroupsAddItemsCall {
  2688  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  2689  	return c
  2690  }
  2691  
  2692  // Context sets the context to be used in this call's Do method.
  2693  func (c *OrganizationsLocationsAddressGroupsAddItemsCall) Context(ctx context.Context) *OrganizationsLocationsAddressGroupsAddItemsCall {
  2694  	c.ctx_ = ctx
  2695  	return c
  2696  }
  2697  
  2698  // Header returns a http.Header that can be modified by the caller to add
  2699  // headers to the request.
  2700  func (c *OrganizationsLocationsAddressGroupsAddItemsCall) Header() http.Header {
  2701  	if c.header_ == nil {
  2702  		c.header_ = make(http.Header)
  2703  	}
  2704  	return c.header_
  2705  }
  2706  
  2707  func (c *OrganizationsLocationsAddressGroupsAddItemsCall) doRequest(alt string) (*http.Response, error) {
  2708  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  2709  	var body io.Reader = nil
  2710  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.addaddressgroupitemsrequest)
  2711  	if err != nil {
  2712  		return nil, err
  2713  	}
  2714  	c.urlParams_.Set("alt", alt)
  2715  	c.urlParams_.Set("prettyPrint", "false")
  2716  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+addressGroup}:addItems")
  2717  	urls += "?" + c.urlParams_.Encode()
  2718  	req, err := http.NewRequest("POST", urls, body)
  2719  	if err != nil {
  2720  		return nil, err
  2721  	}
  2722  	req.Header = reqHeaders
  2723  	googleapi.Expand(req.URL, map[string]string{
  2724  		"addressGroup": c.addressGroup,
  2725  	})
  2726  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  2727  }
  2728  
  2729  // Do executes the "networksecurity.organizations.locations.addressGroups.addItems" call.
  2730  // Any non-2xx status code is an error. Response headers are in either
  2731  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  2732  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  2733  // whether the returned error was because http.StatusNotModified was returned.
  2734  func (c *OrganizationsLocationsAddressGroupsAddItemsCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  2735  	gensupport.SetOptions(c.urlParams_, opts...)
  2736  	res, err := c.doRequest("json")
  2737  	if res != nil && res.StatusCode == http.StatusNotModified {
  2738  		if res.Body != nil {
  2739  			res.Body.Close()
  2740  		}
  2741  		return nil, gensupport.WrapError(&googleapi.Error{
  2742  			Code:   res.StatusCode,
  2743  			Header: res.Header,
  2744  		})
  2745  	}
  2746  	if err != nil {
  2747  		return nil, err
  2748  	}
  2749  	defer googleapi.CloseBody(res)
  2750  	if err := googleapi.CheckResponse(res); err != nil {
  2751  		return nil, gensupport.WrapError(err)
  2752  	}
  2753  	ret := &Operation{
  2754  		ServerResponse: googleapi.ServerResponse{
  2755  			Header:         res.Header,
  2756  			HTTPStatusCode: res.StatusCode,
  2757  		},
  2758  	}
  2759  	target := &ret
  2760  	if err := gensupport.DecodeResponse(target, res); err != nil {
  2761  		return nil, err
  2762  	}
  2763  	return ret, nil
  2764  }
  2765  
  2766  type OrganizationsLocationsAddressGroupsCloneItemsCall struct {
  2767  	s                             *Service
  2768  	addressGroup                  string
  2769  	cloneaddressgroupitemsrequest *CloneAddressGroupItemsRequest
  2770  	urlParams_                    gensupport.URLParams
  2771  	ctx_                          context.Context
  2772  	header_                       http.Header
  2773  }
  2774  
  2775  // CloneItems: Clones items from one address group to another.
  2776  //
  2777  //   - addressGroup: A name of the AddressGroup to clone items to. Must be in the
  2778  //     format `projects|organization/*/locations/{location}/addressGroups/*`.
  2779  func (r *OrganizationsLocationsAddressGroupsService) CloneItems(addressGroup string, cloneaddressgroupitemsrequest *CloneAddressGroupItemsRequest) *OrganizationsLocationsAddressGroupsCloneItemsCall {
  2780  	c := &OrganizationsLocationsAddressGroupsCloneItemsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  2781  	c.addressGroup = addressGroup
  2782  	c.cloneaddressgroupitemsrequest = cloneaddressgroupitemsrequest
  2783  	return c
  2784  }
  2785  
  2786  // Fields allows partial responses to be retrieved. See
  2787  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  2788  // details.
  2789  func (c *OrganizationsLocationsAddressGroupsCloneItemsCall) Fields(s ...googleapi.Field) *OrganizationsLocationsAddressGroupsCloneItemsCall {
  2790  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  2791  	return c
  2792  }
  2793  
  2794  // Context sets the context to be used in this call's Do method.
  2795  func (c *OrganizationsLocationsAddressGroupsCloneItemsCall) Context(ctx context.Context) *OrganizationsLocationsAddressGroupsCloneItemsCall {
  2796  	c.ctx_ = ctx
  2797  	return c
  2798  }
  2799  
  2800  // Header returns a http.Header that can be modified by the caller to add
  2801  // headers to the request.
  2802  func (c *OrganizationsLocationsAddressGroupsCloneItemsCall) Header() http.Header {
  2803  	if c.header_ == nil {
  2804  		c.header_ = make(http.Header)
  2805  	}
  2806  	return c.header_
  2807  }
  2808  
  2809  func (c *OrganizationsLocationsAddressGroupsCloneItemsCall) doRequest(alt string) (*http.Response, error) {
  2810  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  2811  	var body io.Reader = nil
  2812  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.cloneaddressgroupitemsrequest)
  2813  	if err != nil {
  2814  		return nil, err
  2815  	}
  2816  	c.urlParams_.Set("alt", alt)
  2817  	c.urlParams_.Set("prettyPrint", "false")
  2818  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+addressGroup}:cloneItems")
  2819  	urls += "?" + c.urlParams_.Encode()
  2820  	req, err := http.NewRequest("POST", urls, body)
  2821  	if err != nil {
  2822  		return nil, err
  2823  	}
  2824  	req.Header = reqHeaders
  2825  	googleapi.Expand(req.URL, map[string]string{
  2826  		"addressGroup": c.addressGroup,
  2827  	})
  2828  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  2829  }
  2830  
  2831  // Do executes the "networksecurity.organizations.locations.addressGroups.cloneItems" call.
  2832  // Any non-2xx status code is an error. Response headers are in either
  2833  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  2834  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  2835  // whether the returned error was because http.StatusNotModified was returned.
  2836  func (c *OrganizationsLocationsAddressGroupsCloneItemsCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  2837  	gensupport.SetOptions(c.urlParams_, opts...)
  2838  	res, err := c.doRequest("json")
  2839  	if res != nil && res.StatusCode == http.StatusNotModified {
  2840  		if res.Body != nil {
  2841  			res.Body.Close()
  2842  		}
  2843  		return nil, gensupport.WrapError(&googleapi.Error{
  2844  			Code:   res.StatusCode,
  2845  			Header: res.Header,
  2846  		})
  2847  	}
  2848  	if err != nil {
  2849  		return nil, err
  2850  	}
  2851  	defer googleapi.CloseBody(res)
  2852  	if err := googleapi.CheckResponse(res); err != nil {
  2853  		return nil, gensupport.WrapError(err)
  2854  	}
  2855  	ret := &Operation{
  2856  		ServerResponse: googleapi.ServerResponse{
  2857  			Header:         res.Header,
  2858  			HTTPStatusCode: res.StatusCode,
  2859  		},
  2860  	}
  2861  	target := &ret
  2862  	if err := gensupport.DecodeResponse(target, res); err != nil {
  2863  		return nil, err
  2864  	}
  2865  	return ret, nil
  2866  }
  2867  
  2868  type OrganizationsLocationsAddressGroupsCreateCall struct {
  2869  	s            *Service
  2870  	parent       string
  2871  	addressgroup *AddressGroup
  2872  	urlParams_   gensupport.URLParams
  2873  	ctx_         context.Context
  2874  	header_      http.Header
  2875  }
  2876  
  2877  // Create: Creates a new address group in a given project and location.
  2878  //
  2879  //   - parent: The parent resource of the AddressGroup. Must be in the format
  2880  //     `projects/*/locations/{location}`.
  2881  func (r *OrganizationsLocationsAddressGroupsService) Create(parent string, addressgroup *AddressGroup) *OrganizationsLocationsAddressGroupsCreateCall {
  2882  	c := &OrganizationsLocationsAddressGroupsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  2883  	c.parent = parent
  2884  	c.addressgroup = addressgroup
  2885  	return c
  2886  }
  2887  
  2888  // AddressGroupId sets the optional parameter "addressGroupId": Required. Short
  2889  // name of the AddressGroup resource to be created. This value should be 1-63
  2890  // characters long, containing only letters, numbers, hyphens, and underscores,
  2891  // and should not start with a number. E.g. "authz_policy".
  2892  func (c *OrganizationsLocationsAddressGroupsCreateCall) AddressGroupId(addressGroupId string) *OrganizationsLocationsAddressGroupsCreateCall {
  2893  	c.urlParams_.Set("addressGroupId", addressGroupId)
  2894  	return c
  2895  }
  2896  
  2897  // RequestId sets the optional parameter "requestId": An optional request ID to
  2898  // identify requests. Specify a unique request ID so that if you must retry
  2899  // your request, the server will know to ignore the request if it has already
  2900  // been completed. The server will guarantee that for at least 60 minutes since
  2901  // the first request. For example, consider a situation where you make an
  2902  // initial request and the request times out. If you make the request again
  2903  // with the same request ID, the server can check if original operation with
  2904  // the same request ID was received, and if so, will ignore the second request.
  2905  // This prevents clients from accidentally creating duplicate commitments. The
  2906  // request ID must be a valid UUID with the exception that zero UUID is not
  2907  // supported (00000000-0000-0000-0000-000000000000).
  2908  func (c *OrganizationsLocationsAddressGroupsCreateCall) RequestId(requestId string) *OrganizationsLocationsAddressGroupsCreateCall {
  2909  	c.urlParams_.Set("requestId", requestId)
  2910  	return c
  2911  }
  2912  
  2913  // Fields allows partial responses to be retrieved. See
  2914  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  2915  // details.
  2916  func (c *OrganizationsLocationsAddressGroupsCreateCall) Fields(s ...googleapi.Field) *OrganizationsLocationsAddressGroupsCreateCall {
  2917  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  2918  	return c
  2919  }
  2920  
  2921  // Context sets the context to be used in this call's Do method.
  2922  func (c *OrganizationsLocationsAddressGroupsCreateCall) Context(ctx context.Context) *OrganizationsLocationsAddressGroupsCreateCall {
  2923  	c.ctx_ = ctx
  2924  	return c
  2925  }
  2926  
  2927  // Header returns a http.Header that can be modified by the caller to add
  2928  // headers to the request.
  2929  func (c *OrganizationsLocationsAddressGroupsCreateCall) Header() http.Header {
  2930  	if c.header_ == nil {
  2931  		c.header_ = make(http.Header)
  2932  	}
  2933  	return c.header_
  2934  }
  2935  
  2936  func (c *OrganizationsLocationsAddressGroupsCreateCall) doRequest(alt string) (*http.Response, error) {
  2937  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  2938  	var body io.Reader = nil
  2939  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.addressgroup)
  2940  	if err != nil {
  2941  		return nil, err
  2942  	}
  2943  	c.urlParams_.Set("alt", alt)
  2944  	c.urlParams_.Set("prettyPrint", "false")
  2945  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/addressGroups")
  2946  	urls += "?" + c.urlParams_.Encode()
  2947  	req, err := http.NewRequest("POST", urls, body)
  2948  	if err != nil {
  2949  		return nil, err
  2950  	}
  2951  	req.Header = reqHeaders
  2952  	googleapi.Expand(req.URL, map[string]string{
  2953  		"parent": c.parent,
  2954  	})
  2955  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  2956  }
  2957  
  2958  // Do executes the "networksecurity.organizations.locations.addressGroups.create" call.
  2959  // Any non-2xx status code is an error. Response headers are in either
  2960  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  2961  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  2962  // whether the returned error was because http.StatusNotModified was returned.
  2963  func (c *OrganizationsLocationsAddressGroupsCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  2964  	gensupport.SetOptions(c.urlParams_, opts...)
  2965  	res, err := c.doRequest("json")
  2966  	if res != nil && res.StatusCode == http.StatusNotModified {
  2967  		if res.Body != nil {
  2968  			res.Body.Close()
  2969  		}
  2970  		return nil, gensupport.WrapError(&googleapi.Error{
  2971  			Code:   res.StatusCode,
  2972  			Header: res.Header,
  2973  		})
  2974  	}
  2975  	if err != nil {
  2976  		return nil, err
  2977  	}
  2978  	defer googleapi.CloseBody(res)
  2979  	if err := googleapi.CheckResponse(res); err != nil {
  2980  		return nil, gensupport.WrapError(err)
  2981  	}
  2982  	ret := &Operation{
  2983  		ServerResponse: googleapi.ServerResponse{
  2984  			Header:         res.Header,
  2985  			HTTPStatusCode: res.StatusCode,
  2986  		},
  2987  	}
  2988  	target := &ret
  2989  	if err := gensupport.DecodeResponse(target, res); err != nil {
  2990  		return nil, err
  2991  	}
  2992  	return ret, nil
  2993  }
  2994  
  2995  type OrganizationsLocationsAddressGroupsDeleteCall struct {
  2996  	s          *Service
  2997  	name       string
  2998  	urlParams_ gensupport.URLParams
  2999  	ctx_       context.Context
  3000  	header_    http.Header
  3001  }
  3002  
  3003  // Delete: Deletes an address group.
  3004  //
  3005  //   - name: A name of the AddressGroup to delete. Must be in the format
  3006  //     `projects/*/locations/{location}/addressGroups/*`.
  3007  func (r *OrganizationsLocationsAddressGroupsService) Delete(name string) *OrganizationsLocationsAddressGroupsDeleteCall {
  3008  	c := &OrganizationsLocationsAddressGroupsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3009  	c.name = name
  3010  	return c
  3011  }
  3012  
  3013  // RequestId sets the optional parameter "requestId": An optional request ID to
  3014  // identify requests. Specify a unique request ID so that if you must retry
  3015  // your request, the server will know to ignore the request if it has already
  3016  // been completed. The server will guarantee that for at least 60 minutes since
  3017  // the first request. For example, consider a situation where you make an
  3018  // initial request and the request times out. If you make the request again
  3019  // with the same request ID, the server can check if original operation with
  3020  // the same request ID was received, and if so, will ignore the second request.
  3021  // This prevents clients from accidentally creating duplicate commitments. The
  3022  // request ID must be a valid UUID with the exception that zero UUID is not
  3023  // supported (00000000-0000-0000-0000-000000000000).
  3024  func (c *OrganizationsLocationsAddressGroupsDeleteCall) RequestId(requestId string) *OrganizationsLocationsAddressGroupsDeleteCall {
  3025  	c.urlParams_.Set("requestId", requestId)
  3026  	return c
  3027  }
  3028  
  3029  // Fields allows partial responses to be retrieved. See
  3030  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3031  // details.
  3032  func (c *OrganizationsLocationsAddressGroupsDeleteCall) Fields(s ...googleapi.Field) *OrganizationsLocationsAddressGroupsDeleteCall {
  3033  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3034  	return c
  3035  }
  3036  
  3037  // Context sets the context to be used in this call's Do method.
  3038  func (c *OrganizationsLocationsAddressGroupsDeleteCall) Context(ctx context.Context) *OrganizationsLocationsAddressGroupsDeleteCall {
  3039  	c.ctx_ = ctx
  3040  	return c
  3041  }
  3042  
  3043  // Header returns a http.Header that can be modified by the caller to add
  3044  // headers to the request.
  3045  func (c *OrganizationsLocationsAddressGroupsDeleteCall) Header() http.Header {
  3046  	if c.header_ == nil {
  3047  		c.header_ = make(http.Header)
  3048  	}
  3049  	return c.header_
  3050  }
  3051  
  3052  func (c *OrganizationsLocationsAddressGroupsDeleteCall) doRequest(alt string) (*http.Response, error) {
  3053  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  3054  	var body io.Reader = nil
  3055  	c.urlParams_.Set("alt", alt)
  3056  	c.urlParams_.Set("prettyPrint", "false")
  3057  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  3058  	urls += "?" + c.urlParams_.Encode()
  3059  	req, err := http.NewRequest("DELETE", urls, body)
  3060  	if err != nil {
  3061  		return nil, err
  3062  	}
  3063  	req.Header = reqHeaders
  3064  	googleapi.Expand(req.URL, map[string]string{
  3065  		"name": c.name,
  3066  	})
  3067  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3068  }
  3069  
  3070  // Do executes the "networksecurity.organizations.locations.addressGroups.delete" call.
  3071  // Any non-2xx status code is an error. Response headers are in either
  3072  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  3073  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  3074  // whether the returned error was because http.StatusNotModified was returned.
  3075  func (c *OrganizationsLocationsAddressGroupsDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  3076  	gensupport.SetOptions(c.urlParams_, opts...)
  3077  	res, err := c.doRequest("json")
  3078  	if res != nil && res.StatusCode == http.StatusNotModified {
  3079  		if res.Body != nil {
  3080  			res.Body.Close()
  3081  		}
  3082  		return nil, gensupport.WrapError(&googleapi.Error{
  3083  			Code:   res.StatusCode,
  3084  			Header: res.Header,
  3085  		})
  3086  	}
  3087  	if err != nil {
  3088  		return nil, err
  3089  	}
  3090  	defer googleapi.CloseBody(res)
  3091  	if err := googleapi.CheckResponse(res); err != nil {
  3092  		return nil, gensupport.WrapError(err)
  3093  	}
  3094  	ret := &Operation{
  3095  		ServerResponse: googleapi.ServerResponse{
  3096  			Header:         res.Header,
  3097  			HTTPStatusCode: res.StatusCode,
  3098  		},
  3099  	}
  3100  	target := &ret
  3101  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3102  		return nil, err
  3103  	}
  3104  	return ret, nil
  3105  }
  3106  
  3107  type OrganizationsLocationsAddressGroupsGetCall struct {
  3108  	s            *Service
  3109  	name         string
  3110  	urlParams_   gensupport.URLParams
  3111  	ifNoneMatch_ string
  3112  	ctx_         context.Context
  3113  	header_      http.Header
  3114  }
  3115  
  3116  // Get: Gets details of a single address group.
  3117  //
  3118  //   - name: A name of the AddressGroup to get. Must be in the format
  3119  //     `projects/*/locations/{location}/addressGroups/*`.
  3120  func (r *OrganizationsLocationsAddressGroupsService) Get(name string) *OrganizationsLocationsAddressGroupsGetCall {
  3121  	c := &OrganizationsLocationsAddressGroupsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3122  	c.name = name
  3123  	return c
  3124  }
  3125  
  3126  // Fields allows partial responses to be retrieved. See
  3127  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3128  // details.
  3129  func (c *OrganizationsLocationsAddressGroupsGetCall) Fields(s ...googleapi.Field) *OrganizationsLocationsAddressGroupsGetCall {
  3130  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3131  	return c
  3132  }
  3133  
  3134  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  3135  // object's ETag matches the given value. This is useful for getting updates
  3136  // only after the object has changed since the last request.
  3137  func (c *OrganizationsLocationsAddressGroupsGetCall) IfNoneMatch(entityTag string) *OrganizationsLocationsAddressGroupsGetCall {
  3138  	c.ifNoneMatch_ = entityTag
  3139  	return c
  3140  }
  3141  
  3142  // Context sets the context to be used in this call's Do method.
  3143  func (c *OrganizationsLocationsAddressGroupsGetCall) Context(ctx context.Context) *OrganizationsLocationsAddressGroupsGetCall {
  3144  	c.ctx_ = ctx
  3145  	return c
  3146  }
  3147  
  3148  // Header returns a http.Header that can be modified by the caller to add
  3149  // headers to the request.
  3150  func (c *OrganizationsLocationsAddressGroupsGetCall) Header() http.Header {
  3151  	if c.header_ == nil {
  3152  		c.header_ = make(http.Header)
  3153  	}
  3154  	return c.header_
  3155  }
  3156  
  3157  func (c *OrganizationsLocationsAddressGroupsGetCall) doRequest(alt string) (*http.Response, error) {
  3158  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  3159  	if c.ifNoneMatch_ != "" {
  3160  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  3161  	}
  3162  	var body io.Reader = nil
  3163  	c.urlParams_.Set("alt", alt)
  3164  	c.urlParams_.Set("prettyPrint", "false")
  3165  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  3166  	urls += "?" + c.urlParams_.Encode()
  3167  	req, err := http.NewRequest("GET", urls, body)
  3168  	if err != nil {
  3169  		return nil, err
  3170  	}
  3171  	req.Header = reqHeaders
  3172  	googleapi.Expand(req.URL, map[string]string{
  3173  		"name": c.name,
  3174  	})
  3175  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3176  }
  3177  
  3178  // Do executes the "networksecurity.organizations.locations.addressGroups.get" call.
  3179  // Any non-2xx status code is an error. Response headers are in either
  3180  // *AddressGroup.ServerResponse.Header or (if a response was returned at all)
  3181  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  3182  // whether the returned error was because http.StatusNotModified was returned.
  3183  func (c *OrganizationsLocationsAddressGroupsGetCall) Do(opts ...googleapi.CallOption) (*AddressGroup, error) {
  3184  	gensupport.SetOptions(c.urlParams_, opts...)
  3185  	res, err := c.doRequest("json")
  3186  	if res != nil && res.StatusCode == http.StatusNotModified {
  3187  		if res.Body != nil {
  3188  			res.Body.Close()
  3189  		}
  3190  		return nil, gensupport.WrapError(&googleapi.Error{
  3191  			Code:   res.StatusCode,
  3192  			Header: res.Header,
  3193  		})
  3194  	}
  3195  	if err != nil {
  3196  		return nil, err
  3197  	}
  3198  	defer googleapi.CloseBody(res)
  3199  	if err := googleapi.CheckResponse(res); err != nil {
  3200  		return nil, gensupport.WrapError(err)
  3201  	}
  3202  	ret := &AddressGroup{
  3203  		ServerResponse: googleapi.ServerResponse{
  3204  			Header:         res.Header,
  3205  			HTTPStatusCode: res.StatusCode,
  3206  		},
  3207  	}
  3208  	target := &ret
  3209  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3210  		return nil, err
  3211  	}
  3212  	return ret, nil
  3213  }
  3214  
  3215  type OrganizationsLocationsAddressGroupsListCall struct {
  3216  	s            *Service
  3217  	parent       string
  3218  	urlParams_   gensupport.URLParams
  3219  	ifNoneMatch_ string
  3220  	ctx_         context.Context
  3221  	header_      http.Header
  3222  }
  3223  
  3224  // List: Lists address groups in a given project and location.
  3225  //
  3226  //   - parent: The project and location from which the AddressGroups should be
  3227  //     listed, specified in the format `projects/*/locations/{location}`.
  3228  func (r *OrganizationsLocationsAddressGroupsService) List(parent string) *OrganizationsLocationsAddressGroupsListCall {
  3229  	c := &OrganizationsLocationsAddressGroupsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3230  	c.parent = parent
  3231  	return c
  3232  }
  3233  
  3234  // PageSize sets the optional parameter "pageSize": Maximum number of
  3235  // AddressGroups to return per call.
  3236  func (c *OrganizationsLocationsAddressGroupsListCall) PageSize(pageSize int64) *OrganizationsLocationsAddressGroupsListCall {
  3237  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  3238  	return c
  3239  }
  3240  
  3241  // PageToken sets the optional parameter "pageToken": The value returned by the
  3242  // last `ListAddressGroupsResponse` Indicates that this is a continuation of a
  3243  // prior `ListAddressGroups` call, and that the system should return the next
  3244  // page of data.
  3245  func (c *OrganizationsLocationsAddressGroupsListCall) PageToken(pageToken string) *OrganizationsLocationsAddressGroupsListCall {
  3246  	c.urlParams_.Set("pageToken", pageToken)
  3247  	return c
  3248  }
  3249  
  3250  // Fields allows partial responses to be retrieved. See
  3251  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3252  // details.
  3253  func (c *OrganizationsLocationsAddressGroupsListCall) Fields(s ...googleapi.Field) *OrganizationsLocationsAddressGroupsListCall {
  3254  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3255  	return c
  3256  }
  3257  
  3258  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  3259  // object's ETag matches the given value. This is useful for getting updates
  3260  // only after the object has changed since the last request.
  3261  func (c *OrganizationsLocationsAddressGroupsListCall) IfNoneMatch(entityTag string) *OrganizationsLocationsAddressGroupsListCall {
  3262  	c.ifNoneMatch_ = entityTag
  3263  	return c
  3264  }
  3265  
  3266  // Context sets the context to be used in this call's Do method.
  3267  func (c *OrganizationsLocationsAddressGroupsListCall) Context(ctx context.Context) *OrganizationsLocationsAddressGroupsListCall {
  3268  	c.ctx_ = ctx
  3269  	return c
  3270  }
  3271  
  3272  // Header returns a http.Header that can be modified by the caller to add
  3273  // headers to the request.
  3274  func (c *OrganizationsLocationsAddressGroupsListCall) Header() http.Header {
  3275  	if c.header_ == nil {
  3276  		c.header_ = make(http.Header)
  3277  	}
  3278  	return c.header_
  3279  }
  3280  
  3281  func (c *OrganizationsLocationsAddressGroupsListCall) doRequest(alt string) (*http.Response, error) {
  3282  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  3283  	if c.ifNoneMatch_ != "" {
  3284  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  3285  	}
  3286  	var body io.Reader = nil
  3287  	c.urlParams_.Set("alt", alt)
  3288  	c.urlParams_.Set("prettyPrint", "false")
  3289  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/addressGroups")
  3290  	urls += "?" + c.urlParams_.Encode()
  3291  	req, err := http.NewRequest("GET", urls, body)
  3292  	if err != nil {
  3293  		return nil, err
  3294  	}
  3295  	req.Header = reqHeaders
  3296  	googleapi.Expand(req.URL, map[string]string{
  3297  		"parent": c.parent,
  3298  	})
  3299  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3300  }
  3301  
  3302  // Do executes the "networksecurity.organizations.locations.addressGroups.list" call.
  3303  // Any non-2xx status code is an error. Response headers are in either
  3304  // *ListAddressGroupsResponse.ServerResponse.Header or (if a response was
  3305  // returned at all) in error.(*googleapi.Error).Header. Use
  3306  // googleapi.IsNotModified to check whether the returned error was because
  3307  // http.StatusNotModified was returned.
  3308  func (c *OrganizationsLocationsAddressGroupsListCall) Do(opts ...googleapi.CallOption) (*ListAddressGroupsResponse, error) {
  3309  	gensupport.SetOptions(c.urlParams_, opts...)
  3310  	res, err := c.doRequest("json")
  3311  	if res != nil && res.StatusCode == http.StatusNotModified {
  3312  		if res.Body != nil {
  3313  			res.Body.Close()
  3314  		}
  3315  		return nil, gensupport.WrapError(&googleapi.Error{
  3316  			Code:   res.StatusCode,
  3317  			Header: res.Header,
  3318  		})
  3319  	}
  3320  	if err != nil {
  3321  		return nil, err
  3322  	}
  3323  	defer googleapi.CloseBody(res)
  3324  	if err := googleapi.CheckResponse(res); err != nil {
  3325  		return nil, gensupport.WrapError(err)
  3326  	}
  3327  	ret := &ListAddressGroupsResponse{
  3328  		ServerResponse: googleapi.ServerResponse{
  3329  			Header:         res.Header,
  3330  			HTTPStatusCode: res.StatusCode,
  3331  		},
  3332  	}
  3333  	target := &ret
  3334  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3335  		return nil, err
  3336  	}
  3337  	return ret, nil
  3338  }
  3339  
  3340  // Pages invokes f for each page of results.
  3341  // A non-nil error returned from f will halt the iteration.
  3342  // The provided context supersedes any context provided to the Context method.
  3343  func (c *OrganizationsLocationsAddressGroupsListCall) Pages(ctx context.Context, f func(*ListAddressGroupsResponse) error) error {
  3344  	c.ctx_ = ctx
  3345  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  3346  	for {
  3347  		x, err := c.Do()
  3348  		if err != nil {
  3349  			return err
  3350  		}
  3351  		if err := f(x); err != nil {
  3352  			return err
  3353  		}
  3354  		if x.NextPageToken == "" {
  3355  			return nil
  3356  		}
  3357  		c.PageToken(x.NextPageToken)
  3358  	}
  3359  }
  3360  
  3361  type OrganizationsLocationsAddressGroupsListReferencesCall struct {
  3362  	s            *Service
  3363  	addressGroup string
  3364  	urlParams_   gensupport.URLParams
  3365  	ifNoneMatch_ string
  3366  	ctx_         context.Context
  3367  	header_      http.Header
  3368  }
  3369  
  3370  // ListReferences: Lists references of an address group.
  3371  //
  3372  //   - addressGroup: A name of the AddressGroup to clone items to. Must be in the
  3373  //     format `projects|organization/*/locations/{location}/addressGroups/*`.
  3374  func (r *OrganizationsLocationsAddressGroupsService) ListReferences(addressGroup string) *OrganizationsLocationsAddressGroupsListReferencesCall {
  3375  	c := &OrganizationsLocationsAddressGroupsListReferencesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3376  	c.addressGroup = addressGroup
  3377  	return c
  3378  }
  3379  
  3380  // PageSize sets the optional parameter "pageSize": The maximum number of
  3381  // references to return. If unspecified, server will pick an appropriate
  3382  // default. Server may return fewer items than requested. A caller should only
  3383  // rely on response's next_page_token to determine if there are more
  3384  // AddressGroupUsers left to be queried.
  3385  func (c *OrganizationsLocationsAddressGroupsListReferencesCall) PageSize(pageSize int64) *OrganizationsLocationsAddressGroupsListReferencesCall {
  3386  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  3387  	return c
  3388  }
  3389  
  3390  // PageToken sets the optional parameter "pageToken": The next_page_token value
  3391  // returned from a previous List request, if any.
  3392  func (c *OrganizationsLocationsAddressGroupsListReferencesCall) PageToken(pageToken string) *OrganizationsLocationsAddressGroupsListReferencesCall {
  3393  	c.urlParams_.Set("pageToken", pageToken)
  3394  	return c
  3395  }
  3396  
  3397  // Fields allows partial responses to be retrieved. See
  3398  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3399  // details.
  3400  func (c *OrganizationsLocationsAddressGroupsListReferencesCall) Fields(s ...googleapi.Field) *OrganizationsLocationsAddressGroupsListReferencesCall {
  3401  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3402  	return c
  3403  }
  3404  
  3405  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  3406  // object's ETag matches the given value. This is useful for getting updates
  3407  // only after the object has changed since the last request.
  3408  func (c *OrganizationsLocationsAddressGroupsListReferencesCall) IfNoneMatch(entityTag string) *OrganizationsLocationsAddressGroupsListReferencesCall {
  3409  	c.ifNoneMatch_ = entityTag
  3410  	return c
  3411  }
  3412  
  3413  // Context sets the context to be used in this call's Do method.
  3414  func (c *OrganizationsLocationsAddressGroupsListReferencesCall) Context(ctx context.Context) *OrganizationsLocationsAddressGroupsListReferencesCall {
  3415  	c.ctx_ = ctx
  3416  	return c
  3417  }
  3418  
  3419  // Header returns a http.Header that can be modified by the caller to add
  3420  // headers to the request.
  3421  func (c *OrganizationsLocationsAddressGroupsListReferencesCall) Header() http.Header {
  3422  	if c.header_ == nil {
  3423  		c.header_ = make(http.Header)
  3424  	}
  3425  	return c.header_
  3426  }
  3427  
  3428  func (c *OrganizationsLocationsAddressGroupsListReferencesCall) doRequest(alt string) (*http.Response, error) {
  3429  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  3430  	if c.ifNoneMatch_ != "" {
  3431  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  3432  	}
  3433  	var body io.Reader = nil
  3434  	c.urlParams_.Set("alt", alt)
  3435  	c.urlParams_.Set("prettyPrint", "false")
  3436  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+addressGroup}:listReferences")
  3437  	urls += "?" + c.urlParams_.Encode()
  3438  	req, err := http.NewRequest("GET", urls, body)
  3439  	if err != nil {
  3440  		return nil, err
  3441  	}
  3442  	req.Header = reqHeaders
  3443  	googleapi.Expand(req.URL, map[string]string{
  3444  		"addressGroup": c.addressGroup,
  3445  	})
  3446  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3447  }
  3448  
  3449  // Do executes the "networksecurity.organizations.locations.addressGroups.listReferences" call.
  3450  // Any non-2xx status code is an error. Response headers are in either
  3451  // *ListAddressGroupReferencesResponse.ServerResponse.Header or (if a response
  3452  // was returned at all) in error.(*googleapi.Error).Header. Use
  3453  // googleapi.IsNotModified to check whether the returned error was because
  3454  // http.StatusNotModified was returned.
  3455  func (c *OrganizationsLocationsAddressGroupsListReferencesCall) Do(opts ...googleapi.CallOption) (*ListAddressGroupReferencesResponse, error) {
  3456  	gensupport.SetOptions(c.urlParams_, opts...)
  3457  	res, err := c.doRequest("json")
  3458  	if res != nil && res.StatusCode == http.StatusNotModified {
  3459  		if res.Body != nil {
  3460  			res.Body.Close()
  3461  		}
  3462  		return nil, gensupport.WrapError(&googleapi.Error{
  3463  			Code:   res.StatusCode,
  3464  			Header: res.Header,
  3465  		})
  3466  	}
  3467  	if err != nil {
  3468  		return nil, err
  3469  	}
  3470  	defer googleapi.CloseBody(res)
  3471  	if err := googleapi.CheckResponse(res); err != nil {
  3472  		return nil, gensupport.WrapError(err)
  3473  	}
  3474  	ret := &ListAddressGroupReferencesResponse{
  3475  		ServerResponse: googleapi.ServerResponse{
  3476  			Header:         res.Header,
  3477  			HTTPStatusCode: res.StatusCode,
  3478  		},
  3479  	}
  3480  	target := &ret
  3481  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3482  		return nil, err
  3483  	}
  3484  	return ret, nil
  3485  }
  3486  
  3487  // Pages invokes f for each page of results.
  3488  // A non-nil error returned from f will halt the iteration.
  3489  // The provided context supersedes any context provided to the Context method.
  3490  func (c *OrganizationsLocationsAddressGroupsListReferencesCall) Pages(ctx context.Context, f func(*ListAddressGroupReferencesResponse) error) error {
  3491  	c.ctx_ = ctx
  3492  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  3493  	for {
  3494  		x, err := c.Do()
  3495  		if err != nil {
  3496  			return err
  3497  		}
  3498  		if err := f(x); err != nil {
  3499  			return err
  3500  		}
  3501  		if x.NextPageToken == "" {
  3502  			return nil
  3503  		}
  3504  		c.PageToken(x.NextPageToken)
  3505  	}
  3506  }
  3507  
  3508  type OrganizationsLocationsAddressGroupsPatchCall struct {
  3509  	s            *Service
  3510  	name         string
  3511  	addressgroup *AddressGroup
  3512  	urlParams_   gensupport.URLParams
  3513  	ctx_         context.Context
  3514  	header_      http.Header
  3515  }
  3516  
  3517  // Patch: Updates parameters of an address group.
  3518  //
  3519  //   - name: Name of the AddressGroup resource. It matches pattern
  3520  //     `projects/*/locations/{location}/addressGroups/`.
  3521  func (r *OrganizationsLocationsAddressGroupsService) Patch(name string, addressgroup *AddressGroup) *OrganizationsLocationsAddressGroupsPatchCall {
  3522  	c := &OrganizationsLocationsAddressGroupsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3523  	c.name = name
  3524  	c.addressgroup = addressgroup
  3525  	return c
  3526  }
  3527  
  3528  // RequestId sets the optional parameter "requestId": An optional request ID to
  3529  // identify requests. Specify a unique request ID so that if you must retry
  3530  // your request, the server will know to ignore the request if it has already
  3531  // been completed. The server will guarantee that for at least 60 minutes since
  3532  // the first request. For example, consider a situation where you make an
  3533  // initial request and the request times out. If you make the request again
  3534  // with the same request ID, the server can check if original operation with
  3535  // the same request ID was received, and if so, will ignore the second request.
  3536  // This prevents clients from accidentally creating duplicate commitments. The
  3537  // request ID must be a valid UUID with the exception that zero UUID is not
  3538  // supported (00000000-0000-0000-0000-000000000000).
  3539  func (c *OrganizationsLocationsAddressGroupsPatchCall) RequestId(requestId string) *OrganizationsLocationsAddressGroupsPatchCall {
  3540  	c.urlParams_.Set("requestId", requestId)
  3541  	return c
  3542  }
  3543  
  3544  // UpdateMask sets the optional parameter "updateMask": Field mask is used to
  3545  // specify the fields to be overwritten in the AddressGroup resource by the
  3546  // update. The fields specified in the update_mask are relative to the
  3547  // resource, not the full request. A field will be overwritten if it is in the
  3548  // mask. If the user does not provide a mask then all fields will be
  3549  // overwritten.
  3550  func (c *OrganizationsLocationsAddressGroupsPatchCall) UpdateMask(updateMask string) *OrganizationsLocationsAddressGroupsPatchCall {
  3551  	c.urlParams_.Set("updateMask", updateMask)
  3552  	return c
  3553  }
  3554  
  3555  // Fields allows partial responses to be retrieved. See
  3556  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3557  // details.
  3558  func (c *OrganizationsLocationsAddressGroupsPatchCall) Fields(s ...googleapi.Field) *OrganizationsLocationsAddressGroupsPatchCall {
  3559  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3560  	return c
  3561  }
  3562  
  3563  // Context sets the context to be used in this call's Do method.
  3564  func (c *OrganizationsLocationsAddressGroupsPatchCall) Context(ctx context.Context) *OrganizationsLocationsAddressGroupsPatchCall {
  3565  	c.ctx_ = ctx
  3566  	return c
  3567  }
  3568  
  3569  // Header returns a http.Header that can be modified by the caller to add
  3570  // headers to the request.
  3571  func (c *OrganizationsLocationsAddressGroupsPatchCall) Header() http.Header {
  3572  	if c.header_ == nil {
  3573  		c.header_ = make(http.Header)
  3574  	}
  3575  	return c.header_
  3576  }
  3577  
  3578  func (c *OrganizationsLocationsAddressGroupsPatchCall) doRequest(alt string) (*http.Response, error) {
  3579  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  3580  	var body io.Reader = nil
  3581  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.addressgroup)
  3582  	if err != nil {
  3583  		return nil, err
  3584  	}
  3585  	c.urlParams_.Set("alt", alt)
  3586  	c.urlParams_.Set("prettyPrint", "false")
  3587  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  3588  	urls += "?" + c.urlParams_.Encode()
  3589  	req, err := http.NewRequest("PATCH", urls, body)
  3590  	if err != nil {
  3591  		return nil, err
  3592  	}
  3593  	req.Header = reqHeaders
  3594  	googleapi.Expand(req.URL, map[string]string{
  3595  		"name": c.name,
  3596  	})
  3597  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3598  }
  3599  
  3600  // Do executes the "networksecurity.organizations.locations.addressGroups.patch" call.
  3601  // Any non-2xx status code is an error. Response headers are in either
  3602  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  3603  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  3604  // whether the returned error was because http.StatusNotModified was returned.
  3605  func (c *OrganizationsLocationsAddressGroupsPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  3606  	gensupport.SetOptions(c.urlParams_, opts...)
  3607  	res, err := c.doRequest("json")
  3608  	if res != nil && res.StatusCode == http.StatusNotModified {
  3609  		if res.Body != nil {
  3610  			res.Body.Close()
  3611  		}
  3612  		return nil, gensupport.WrapError(&googleapi.Error{
  3613  			Code:   res.StatusCode,
  3614  			Header: res.Header,
  3615  		})
  3616  	}
  3617  	if err != nil {
  3618  		return nil, err
  3619  	}
  3620  	defer googleapi.CloseBody(res)
  3621  	if err := googleapi.CheckResponse(res); err != nil {
  3622  		return nil, gensupport.WrapError(err)
  3623  	}
  3624  	ret := &Operation{
  3625  		ServerResponse: googleapi.ServerResponse{
  3626  			Header:         res.Header,
  3627  			HTTPStatusCode: res.StatusCode,
  3628  		},
  3629  	}
  3630  	target := &ret
  3631  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3632  		return nil, err
  3633  	}
  3634  	return ret, nil
  3635  }
  3636  
  3637  type OrganizationsLocationsAddressGroupsRemoveItemsCall struct {
  3638  	s                              *Service
  3639  	addressGroup                   string
  3640  	removeaddressgroupitemsrequest *RemoveAddressGroupItemsRequest
  3641  	urlParams_                     gensupport.URLParams
  3642  	ctx_                           context.Context
  3643  	header_                        http.Header
  3644  }
  3645  
  3646  // RemoveItems: Removes items from an address group.
  3647  //
  3648  //   - addressGroup: A name of the AddressGroup to remove items from. Must be in
  3649  //     the format `projects|organization/*/locations/{location}/addressGroups/*`.
  3650  func (r *OrganizationsLocationsAddressGroupsService) RemoveItems(addressGroup string, removeaddressgroupitemsrequest *RemoveAddressGroupItemsRequest) *OrganizationsLocationsAddressGroupsRemoveItemsCall {
  3651  	c := &OrganizationsLocationsAddressGroupsRemoveItemsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3652  	c.addressGroup = addressGroup
  3653  	c.removeaddressgroupitemsrequest = removeaddressgroupitemsrequest
  3654  	return c
  3655  }
  3656  
  3657  // Fields allows partial responses to be retrieved. See
  3658  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3659  // details.
  3660  func (c *OrganizationsLocationsAddressGroupsRemoveItemsCall) Fields(s ...googleapi.Field) *OrganizationsLocationsAddressGroupsRemoveItemsCall {
  3661  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3662  	return c
  3663  }
  3664  
  3665  // Context sets the context to be used in this call's Do method.
  3666  func (c *OrganizationsLocationsAddressGroupsRemoveItemsCall) Context(ctx context.Context) *OrganizationsLocationsAddressGroupsRemoveItemsCall {
  3667  	c.ctx_ = ctx
  3668  	return c
  3669  }
  3670  
  3671  // Header returns a http.Header that can be modified by the caller to add
  3672  // headers to the request.
  3673  func (c *OrganizationsLocationsAddressGroupsRemoveItemsCall) Header() http.Header {
  3674  	if c.header_ == nil {
  3675  		c.header_ = make(http.Header)
  3676  	}
  3677  	return c.header_
  3678  }
  3679  
  3680  func (c *OrganizationsLocationsAddressGroupsRemoveItemsCall) doRequest(alt string) (*http.Response, error) {
  3681  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  3682  	var body io.Reader = nil
  3683  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.removeaddressgroupitemsrequest)
  3684  	if err != nil {
  3685  		return nil, err
  3686  	}
  3687  	c.urlParams_.Set("alt", alt)
  3688  	c.urlParams_.Set("prettyPrint", "false")
  3689  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+addressGroup}:removeItems")
  3690  	urls += "?" + c.urlParams_.Encode()
  3691  	req, err := http.NewRequest("POST", urls, body)
  3692  	if err != nil {
  3693  		return nil, err
  3694  	}
  3695  	req.Header = reqHeaders
  3696  	googleapi.Expand(req.URL, map[string]string{
  3697  		"addressGroup": c.addressGroup,
  3698  	})
  3699  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3700  }
  3701  
  3702  // Do executes the "networksecurity.organizations.locations.addressGroups.removeItems" call.
  3703  // Any non-2xx status code is an error. Response headers are in either
  3704  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  3705  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  3706  // whether the returned error was because http.StatusNotModified was returned.
  3707  func (c *OrganizationsLocationsAddressGroupsRemoveItemsCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  3708  	gensupport.SetOptions(c.urlParams_, opts...)
  3709  	res, err := c.doRequest("json")
  3710  	if res != nil && res.StatusCode == http.StatusNotModified {
  3711  		if res.Body != nil {
  3712  			res.Body.Close()
  3713  		}
  3714  		return nil, gensupport.WrapError(&googleapi.Error{
  3715  			Code:   res.StatusCode,
  3716  			Header: res.Header,
  3717  		})
  3718  	}
  3719  	if err != nil {
  3720  		return nil, err
  3721  	}
  3722  	defer googleapi.CloseBody(res)
  3723  	if err := googleapi.CheckResponse(res); err != nil {
  3724  		return nil, gensupport.WrapError(err)
  3725  	}
  3726  	ret := &Operation{
  3727  		ServerResponse: googleapi.ServerResponse{
  3728  			Header:         res.Header,
  3729  			HTTPStatusCode: res.StatusCode,
  3730  		},
  3731  	}
  3732  	target := &ret
  3733  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3734  		return nil, err
  3735  	}
  3736  	return ret, nil
  3737  }
  3738  
  3739  type OrganizationsLocationsFirewallEndpointsCreateCall struct {
  3740  	s                *Service
  3741  	parent           string
  3742  	firewallendpoint *FirewallEndpoint
  3743  	urlParams_       gensupport.URLParams
  3744  	ctx_             context.Context
  3745  	header_          http.Header
  3746  }
  3747  
  3748  // Create: Creates a new FirewallEndpoint in a given project and location.
  3749  //
  3750  // - parent: Value for parent.
  3751  func (r *OrganizationsLocationsFirewallEndpointsService) Create(parent string, firewallendpoint *FirewallEndpoint) *OrganizationsLocationsFirewallEndpointsCreateCall {
  3752  	c := &OrganizationsLocationsFirewallEndpointsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3753  	c.parent = parent
  3754  	c.firewallendpoint = firewallendpoint
  3755  	return c
  3756  }
  3757  
  3758  // FirewallEndpointId sets the optional parameter "firewallEndpointId":
  3759  // Required. Id of the requesting object. If auto-generating Id server-side,
  3760  // remove this field and firewall_endpoint_id from the method_signature of
  3761  // Create RPC.
  3762  func (c *OrganizationsLocationsFirewallEndpointsCreateCall) FirewallEndpointId(firewallEndpointId string) *OrganizationsLocationsFirewallEndpointsCreateCall {
  3763  	c.urlParams_.Set("firewallEndpointId", firewallEndpointId)
  3764  	return c
  3765  }
  3766  
  3767  // RequestId sets the optional parameter "requestId": An optional request ID to
  3768  // identify requests. Specify a unique request ID so that if you must retry
  3769  // your request, the server will know to ignore the request if it has already
  3770  // been completed. The server will guarantee that for at least 60 minutes since
  3771  // the first request. For example, consider a situation where you make an
  3772  // initial request and the request times out. If you make the request again
  3773  // with the same request ID, the server can check if original operation with
  3774  // the same request ID was received, and if so, will ignore the second request.
  3775  // This prevents clients from accidentally creating duplicate commitments. The
  3776  // request ID must be a valid UUID with the exception that zero UUID is not
  3777  // supported (00000000-0000-0000-0000-000000000000).
  3778  func (c *OrganizationsLocationsFirewallEndpointsCreateCall) RequestId(requestId string) *OrganizationsLocationsFirewallEndpointsCreateCall {
  3779  	c.urlParams_.Set("requestId", requestId)
  3780  	return c
  3781  }
  3782  
  3783  // Fields allows partial responses to be retrieved. See
  3784  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3785  // details.
  3786  func (c *OrganizationsLocationsFirewallEndpointsCreateCall) Fields(s ...googleapi.Field) *OrganizationsLocationsFirewallEndpointsCreateCall {
  3787  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3788  	return c
  3789  }
  3790  
  3791  // Context sets the context to be used in this call's Do method.
  3792  func (c *OrganizationsLocationsFirewallEndpointsCreateCall) Context(ctx context.Context) *OrganizationsLocationsFirewallEndpointsCreateCall {
  3793  	c.ctx_ = ctx
  3794  	return c
  3795  }
  3796  
  3797  // Header returns a http.Header that can be modified by the caller to add
  3798  // headers to the request.
  3799  func (c *OrganizationsLocationsFirewallEndpointsCreateCall) Header() http.Header {
  3800  	if c.header_ == nil {
  3801  		c.header_ = make(http.Header)
  3802  	}
  3803  	return c.header_
  3804  }
  3805  
  3806  func (c *OrganizationsLocationsFirewallEndpointsCreateCall) doRequest(alt string) (*http.Response, error) {
  3807  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  3808  	var body io.Reader = nil
  3809  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.firewallendpoint)
  3810  	if err != nil {
  3811  		return nil, err
  3812  	}
  3813  	c.urlParams_.Set("alt", alt)
  3814  	c.urlParams_.Set("prettyPrint", "false")
  3815  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/firewallEndpoints")
  3816  	urls += "?" + c.urlParams_.Encode()
  3817  	req, err := http.NewRequest("POST", urls, body)
  3818  	if err != nil {
  3819  		return nil, err
  3820  	}
  3821  	req.Header = reqHeaders
  3822  	googleapi.Expand(req.URL, map[string]string{
  3823  		"parent": c.parent,
  3824  	})
  3825  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3826  }
  3827  
  3828  // Do executes the "networksecurity.organizations.locations.firewallEndpoints.create" call.
  3829  // Any non-2xx status code is an error. Response headers are in either
  3830  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  3831  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  3832  // whether the returned error was because http.StatusNotModified was returned.
  3833  func (c *OrganizationsLocationsFirewallEndpointsCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  3834  	gensupport.SetOptions(c.urlParams_, opts...)
  3835  	res, err := c.doRequest("json")
  3836  	if res != nil && res.StatusCode == http.StatusNotModified {
  3837  		if res.Body != nil {
  3838  			res.Body.Close()
  3839  		}
  3840  		return nil, gensupport.WrapError(&googleapi.Error{
  3841  			Code:   res.StatusCode,
  3842  			Header: res.Header,
  3843  		})
  3844  	}
  3845  	if err != nil {
  3846  		return nil, err
  3847  	}
  3848  	defer googleapi.CloseBody(res)
  3849  	if err := googleapi.CheckResponse(res); err != nil {
  3850  		return nil, gensupport.WrapError(err)
  3851  	}
  3852  	ret := &Operation{
  3853  		ServerResponse: googleapi.ServerResponse{
  3854  			Header:         res.Header,
  3855  			HTTPStatusCode: res.StatusCode,
  3856  		},
  3857  	}
  3858  	target := &ret
  3859  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3860  		return nil, err
  3861  	}
  3862  	return ret, nil
  3863  }
  3864  
  3865  type OrganizationsLocationsFirewallEndpointsDeleteCall struct {
  3866  	s          *Service
  3867  	name       string
  3868  	urlParams_ gensupport.URLParams
  3869  	ctx_       context.Context
  3870  	header_    http.Header
  3871  }
  3872  
  3873  // Delete: Deletes a single Endpoint.
  3874  //
  3875  // - name: Name of the resource.
  3876  func (r *OrganizationsLocationsFirewallEndpointsService) Delete(name string) *OrganizationsLocationsFirewallEndpointsDeleteCall {
  3877  	c := &OrganizationsLocationsFirewallEndpointsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3878  	c.name = name
  3879  	return c
  3880  }
  3881  
  3882  // RequestId sets the optional parameter "requestId": An optional request ID to
  3883  // identify requests. Specify a unique request ID so that if you must retry
  3884  // your request, the server will know to ignore the request if it has already
  3885  // been completed. The server will guarantee that for at least 60 minutes after
  3886  // the first request. For example, consider a situation where you make an
  3887  // initial request and the request times out. If you make the request again
  3888  // with the same request ID, the server can check if original operation with
  3889  // the same request ID was received, and if so, will ignore the second request.
  3890  // This prevents clients from accidentally creating duplicate commitments. The
  3891  // request ID must be a valid UUID with the exception that zero UUID is not
  3892  // supported (00000000-0000-0000-0000-000000000000).
  3893  func (c *OrganizationsLocationsFirewallEndpointsDeleteCall) RequestId(requestId string) *OrganizationsLocationsFirewallEndpointsDeleteCall {
  3894  	c.urlParams_.Set("requestId", requestId)
  3895  	return c
  3896  }
  3897  
  3898  // Fields allows partial responses to be retrieved. See
  3899  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3900  // details.
  3901  func (c *OrganizationsLocationsFirewallEndpointsDeleteCall) Fields(s ...googleapi.Field) *OrganizationsLocationsFirewallEndpointsDeleteCall {
  3902  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3903  	return c
  3904  }
  3905  
  3906  // Context sets the context to be used in this call's Do method.
  3907  func (c *OrganizationsLocationsFirewallEndpointsDeleteCall) Context(ctx context.Context) *OrganizationsLocationsFirewallEndpointsDeleteCall {
  3908  	c.ctx_ = ctx
  3909  	return c
  3910  }
  3911  
  3912  // Header returns a http.Header that can be modified by the caller to add
  3913  // headers to the request.
  3914  func (c *OrganizationsLocationsFirewallEndpointsDeleteCall) Header() http.Header {
  3915  	if c.header_ == nil {
  3916  		c.header_ = make(http.Header)
  3917  	}
  3918  	return c.header_
  3919  }
  3920  
  3921  func (c *OrganizationsLocationsFirewallEndpointsDeleteCall) doRequest(alt string) (*http.Response, error) {
  3922  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  3923  	var body io.Reader = nil
  3924  	c.urlParams_.Set("alt", alt)
  3925  	c.urlParams_.Set("prettyPrint", "false")
  3926  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  3927  	urls += "?" + c.urlParams_.Encode()
  3928  	req, err := http.NewRequest("DELETE", urls, body)
  3929  	if err != nil {
  3930  		return nil, err
  3931  	}
  3932  	req.Header = reqHeaders
  3933  	googleapi.Expand(req.URL, map[string]string{
  3934  		"name": c.name,
  3935  	})
  3936  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3937  }
  3938  
  3939  // Do executes the "networksecurity.organizations.locations.firewallEndpoints.delete" call.
  3940  // Any non-2xx status code is an error. Response headers are in either
  3941  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  3942  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  3943  // whether the returned error was because http.StatusNotModified was returned.
  3944  func (c *OrganizationsLocationsFirewallEndpointsDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  3945  	gensupport.SetOptions(c.urlParams_, opts...)
  3946  	res, err := c.doRequest("json")
  3947  	if res != nil && res.StatusCode == http.StatusNotModified {
  3948  		if res.Body != nil {
  3949  			res.Body.Close()
  3950  		}
  3951  		return nil, gensupport.WrapError(&googleapi.Error{
  3952  			Code:   res.StatusCode,
  3953  			Header: res.Header,
  3954  		})
  3955  	}
  3956  	if err != nil {
  3957  		return nil, err
  3958  	}
  3959  	defer googleapi.CloseBody(res)
  3960  	if err := googleapi.CheckResponse(res); err != nil {
  3961  		return nil, gensupport.WrapError(err)
  3962  	}
  3963  	ret := &Operation{
  3964  		ServerResponse: googleapi.ServerResponse{
  3965  			Header:         res.Header,
  3966  			HTTPStatusCode: res.StatusCode,
  3967  		},
  3968  	}
  3969  	target := &ret
  3970  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3971  		return nil, err
  3972  	}
  3973  	return ret, nil
  3974  }
  3975  
  3976  type OrganizationsLocationsFirewallEndpointsGetCall struct {
  3977  	s            *Service
  3978  	name         string
  3979  	urlParams_   gensupport.URLParams
  3980  	ifNoneMatch_ string
  3981  	ctx_         context.Context
  3982  	header_      http.Header
  3983  }
  3984  
  3985  // Get: Gets details of a single Endpoint.
  3986  //
  3987  // - name: Name of the resource.
  3988  func (r *OrganizationsLocationsFirewallEndpointsService) Get(name string) *OrganizationsLocationsFirewallEndpointsGetCall {
  3989  	c := &OrganizationsLocationsFirewallEndpointsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3990  	c.name = name
  3991  	return c
  3992  }
  3993  
  3994  // Fields allows partial responses to be retrieved. See
  3995  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3996  // details.
  3997  func (c *OrganizationsLocationsFirewallEndpointsGetCall) Fields(s ...googleapi.Field) *OrganizationsLocationsFirewallEndpointsGetCall {
  3998  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3999  	return c
  4000  }
  4001  
  4002  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  4003  // object's ETag matches the given value. This is useful for getting updates
  4004  // only after the object has changed since the last request.
  4005  func (c *OrganizationsLocationsFirewallEndpointsGetCall) IfNoneMatch(entityTag string) *OrganizationsLocationsFirewallEndpointsGetCall {
  4006  	c.ifNoneMatch_ = entityTag
  4007  	return c
  4008  }
  4009  
  4010  // Context sets the context to be used in this call's Do method.
  4011  func (c *OrganizationsLocationsFirewallEndpointsGetCall) Context(ctx context.Context) *OrganizationsLocationsFirewallEndpointsGetCall {
  4012  	c.ctx_ = ctx
  4013  	return c
  4014  }
  4015  
  4016  // Header returns a http.Header that can be modified by the caller to add
  4017  // headers to the request.
  4018  func (c *OrganizationsLocationsFirewallEndpointsGetCall) Header() http.Header {
  4019  	if c.header_ == nil {
  4020  		c.header_ = make(http.Header)
  4021  	}
  4022  	return c.header_
  4023  }
  4024  
  4025  func (c *OrganizationsLocationsFirewallEndpointsGetCall) doRequest(alt string) (*http.Response, error) {
  4026  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  4027  	if c.ifNoneMatch_ != "" {
  4028  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  4029  	}
  4030  	var body io.Reader = nil
  4031  	c.urlParams_.Set("alt", alt)
  4032  	c.urlParams_.Set("prettyPrint", "false")
  4033  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  4034  	urls += "?" + c.urlParams_.Encode()
  4035  	req, err := http.NewRequest("GET", urls, body)
  4036  	if err != nil {
  4037  		return nil, err
  4038  	}
  4039  	req.Header = reqHeaders
  4040  	googleapi.Expand(req.URL, map[string]string{
  4041  		"name": c.name,
  4042  	})
  4043  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4044  }
  4045  
  4046  // Do executes the "networksecurity.organizations.locations.firewallEndpoints.get" call.
  4047  // Any non-2xx status code is an error. Response headers are in either
  4048  // *FirewallEndpoint.ServerResponse.Header or (if a response was returned at
  4049  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  4050  // check whether the returned error was because http.StatusNotModified was
  4051  // returned.
  4052  func (c *OrganizationsLocationsFirewallEndpointsGetCall) Do(opts ...googleapi.CallOption) (*FirewallEndpoint, error) {
  4053  	gensupport.SetOptions(c.urlParams_, opts...)
  4054  	res, err := c.doRequest("json")
  4055  	if res != nil && res.StatusCode == http.StatusNotModified {
  4056  		if res.Body != nil {
  4057  			res.Body.Close()
  4058  		}
  4059  		return nil, gensupport.WrapError(&googleapi.Error{
  4060  			Code:   res.StatusCode,
  4061  			Header: res.Header,
  4062  		})
  4063  	}
  4064  	if err != nil {
  4065  		return nil, err
  4066  	}
  4067  	defer googleapi.CloseBody(res)
  4068  	if err := googleapi.CheckResponse(res); err != nil {
  4069  		return nil, gensupport.WrapError(err)
  4070  	}
  4071  	ret := &FirewallEndpoint{
  4072  		ServerResponse: googleapi.ServerResponse{
  4073  			Header:         res.Header,
  4074  			HTTPStatusCode: res.StatusCode,
  4075  		},
  4076  	}
  4077  	target := &ret
  4078  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4079  		return nil, err
  4080  	}
  4081  	return ret, nil
  4082  }
  4083  
  4084  type OrganizationsLocationsFirewallEndpointsListCall struct {
  4085  	s            *Service
  4086  	parent       string
  4087  	urlParams_   gensupport.URLParams
  4088  	ifNoneMatch_ string
  4089  	ctx_         context.Context
  4090  	header_      http.Header
  4091  }
  4092  
  4093  // List: Lists FirewallEndpoints in a given project and location.
  4094  //
  4095  // - parent: Parent value for ListEndpointsRequest.
  4096  func (r *OrganizationsLocationsFirewallEndpointsService) List(parent string) *OrganizationsLocationsFirewallEndpointsListCall {
  4097  	c := &OrganizationsLocationsFirewallEndpointsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4098  	c.parent = parent
  4099  	return c
  4100  }
  4101  
  4102  // Filter sets the optional parameter "filter": Filtering results
  4103  func (c *OrganizationsLocationsFirewallEndpointsListCall) Filter(filter string) *OrganizationsLocationsFirewallEndpointsListCall {
  4104  	c.urlParams_.Set("filter", filter)
  4105  	return c
  4106  }
  4107  
  4108  // OrderBy sets the optional parameter "orderBy": Hint for how to order the
  4109  // results
  4110  func (c *OrganizationsLocationsFirewallEndpointsListCall) OrderBy(orderBy string) *OrganizationsLocationsFirewallEndpointsListCall {
  4111  	c.urlParams_.Set("orderBy", orderBy)
  4112  	return c
  4113  }
  4114  
  4115  // PageSize sets the optional parameter "pageSize": Requested page size. Server
  4116  // may return fewer items than requested. If unspecified, server will pick an
  4117  // appropriate default.
  4118  func (c *OrganizationsLocationsFirewallEndpointsListCall) PageSize(pageSize int64) *OrganizationsLocationsFirewallEndpointsListCall {
  4119  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  4120  	return c
  4121  }
  4122  
  4123  // PageToken sets the optional parameter "pageToken": A token identifying a
  4124  // page of results the server should return.
  4125  func (c *OrganizationsLocationsFirewallEndpointsListCall) PageToken(pageToken string) *OrganizationsLocationsFirewallEndpointsListCall {
  4126  	c.urlParams_.Set("pageToken", pageToken)
  4127  	return c
  4128  }
  4129  
  4130  // Fields allows partial responses to be retrieved. See
  4131  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4132  // details.
  4133  func (c *OrganizationsLocationsFirewallEndpointsListCall) Fields(s ...googleapi.Field) *OrganizationsLocationsFirewallEndpointsListCall {
  4134  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4135  	return c
  4136  }
  4137  
  4138  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  4139  // object's ETag matches the given value. This is useful for getting updates
  4140  // only after the object has changed since the last request.
  4141  func (c *OrganizationsLocationsFirewallEndpointsListCall) IfNoneMatch(entityTag string) *OrganizationsLocationsFirewallEndpointsListCall {
  4142  	c.ifNoneMatch_ = entityTag
  4143  	return c
  4144  }
  4145  
  4146  // Context sets the context to be used in this call's Do method.
  4147  func (c *OrganizationsLocationsFirewallEndpointsListCall) Context(ctx context.Context) *OrganizationsLocationsFirewallEndpointsListCall {
  4148  	c.ctx_ = ctx
  4149  	return c
  4150  }
  4151  
  4152  // Header returns a http.Header that can be modified by the caller to add
  4153  // headers to the request.
  4154  func (c *OrganizationsLocationsFirewallEndpointsListCall) Header() http.Header {
  4155  	if c.header_ == nil {
  4156  		c.header_ = make(http.Header)
  4157  	}
  4158  	return c.header_
  4159  }
  4160  
  4161  func (c *OrganizationsLocationsFirewallEndpointsListCall) doRequest(alt string) (*http.Response, error) {
  4162  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  4163  	if c.ifNoneMatch_ != "" {
  4164  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  4165  	}
  4166  	var body io.Reader = nil
  4167  	c.urlParams_.Set("alt", alt)
  4168  	c.urlParams_.Set("prettyPrint", "false")
  4169  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/firewallEndpoints")
  4170  	urls += "?" + c.urlParams_.Encode()
  4171  	req, err := http.NewRequest("GET", urls, body)
  4172  	if err != nil {
  4173  		return nil, err
  4174  	}
  4175  	req.Header = reqHeaders
  4176  	googleapi.Expand(req.URL, map[string]string{
  4177  		"parent": c.parent,
  4178  	})
  4179  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4180  }
  4181  
  4182  // Do executes the "networksecurity.organizations.locations.firewallEndpoints.list" call.
  4183  // Any non-2xx status code is an error. Response headers are in either
  4184  // *ListFirewallEndpointsResponse.ServerResponse.Header or (if a response was
  4185  // returned at all) in error.(*googleapi.Error).Header. Use
  4186  // googleapi.IsNotModified to check whether the returned error was because
  4187  // http.StatusNotModified was returned.
  4188  func (c *OrganizationsLocationsFirewallEndpointsListCall) Do(opts ...googleapi.CallOption) (*ListFirewallEndpointsResponse, error) {
  4189  	gensupport.SetOptions(c.urlParams_, opts...)
  4190  	res, err := c.doRequest("json")
  4191  	if res != nil && res.StatusCode == http.StatusNotModified {
  4192  		if res.Body != nil {
  4193  			res.Body.Close()
  4194  		}
  4195  		return nil, gensupport.WrapError(&googleapi.Error{
  4196  			Code:   res.StatusCode,
  4197  			Header: res.Header,
  4198  		})
  4199  	}
  4200  	if err != nil {
  4201  		return nil, err
  4202  	}
  4203  	defer googleapi.CloseBody(res)
  4204  	if err := googleapi.CheckResponse(res); err != nil {
  4205  		return nil, gensupport.WrapError(err)
  4206  	}
  4207  	ret := &ListFirewallEndpointsResponse{
  4208  		ServerResponse: googleapi.ServerResponse{
  4209  			Header:         res.Header,
  4210  			HTTPStatusCode: res.StatusCode,
  4211  		},
  4212  	}
  4213  	target := &ret
  4214  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4215  		return nil, err
  4216  	}
  4217  	return ret, nil
  4218  }
  4219  
  4220  // Pages invokes f for each page of results.
  4221  // A non-nil error returned from f will halt the iteration.
  4222  // The provided context supersedes any context provided to the Context method.
  4223  func (c *OrganizationsLocationsFirewallEndpointsListCall) Pages(ctx context.Context, f func(*ListFirewallEndpointsResponse) error) error {
  4224  	c.ctx_ = ctx
  4225  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  4226  	for {
  4227  		x, err := c.Do()
  4228  		if err != nil {
  4229  			return err
  4230  		}
  4231  		if err := f(x); err != nil {
  4232  			return err
  4233  		}
  4234  		if x.NextPageToken == "" {
  4235  			return nil
  4236  		}
  4237  		c.PageToken(x.NextPageToken)
  4238  	}
  4239  }
  4240  
  4241  type OrganizationsLocationsFirewallEndpointsPatchCall struct {
  4242  	s                *Service
  4243  	name             string
  4244  	firewallendpoint *FirewallEndpoint
  4245  	urlParams_       gensupport.URLParams
  4246  	ctx_             context.Context
  4247  	header_          http.Header
  4248  }
  4249  
  4250  // Patch: Update a single Endpoint.
  4251  //
  4252  // - name: Immutable. Identifier. name of resource.
  4253  func (r *OrganizationsLocationsFirewallEndpointsService) Patch(name string, firewallendpoint *FirewallEndpoint) *OrganizationsLocationsFirewallEndpointsPatchCall {
  4254  	c := &OrganizationsLocationsFirewallEndpointsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4255  	c.name = name
  4256  	c.firewallendpoint = firewallendpoint
  4257  	return c
  4258  }
  4259  
  4260  // RequestId sets the optional parameter "requestId": An optional request ID to
  4261  // identify requests. Specify a unique request ID so that if you must retry
  4262  // your request, the server will know to ignore the request if it has already
  4263  // been completed. The server will guarantee that for at least 60 minutes since
  4264  // the first request. For example, consider a situation where you make an
  4265  // initial request and the request times out. If you make the request again
  4266  // with the same request ID, the server can check if original operation with
  4267  // the same request ID was received, and if so, will ignore the second request.
  4268  // This prevents clients from accidentally creating duplicate commitments. The
  4269  // request ID must be a valid UUID with the exception that zero UUID is not
  4270  // supported (00000000-0000-0000-0000-000000000000).
  4271  func (c *OrganizationsLocationsFirewallEndpointsPatchCall) RequestId(requestId string) *OrganizationsLocationsFirewallEndpointsPatchCall {
  4272  	c.urlParams_.Set("requestId", requestId)
  4273  	return c
  4274  }
  4275  
  4276  // UpdateMask sets the optional parameter "updateMask": Required. Field mask is
  4277  // used to specify the fields to be overwritten in the Endpoint resource by the
  4278  // update. The fields specified in the update_mask are relative to the
  4279  // resource, not the full request. A field will be overwritten if it is in the
  4280  // mask. If the user does not provide a mask then all fields will be
  4281  // overwritten.
  4282  func (c *OrganizationsLocationsFirewallEndpointsPatchCall) UpdateMask(updateMask string) *OrganizationsLocationsFirewallEndpointsPatchCall {
  4283  	c.urlParams_.Set("updateMask", updateMask)
  4284  	return c
  4285  }
  4286  
  4287  // Fields allows partial responses to be retrieved. See
  4288  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4289  // details.
  4290  func (c *OrganizationsLocationsFirewallEndpointsPatchCall) Fields(s ...googleapi.Field) *OrganizationsLocationsFirewallEndpointsPatchCall {
  4291  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4292  	return c
  4293  }
  4294  
  4295  // Context sets the context to be used in this call's Do method.
  4296  func (c *OrganizationsLocationsFirewallEndpointsPatchCall) Context(ctx context.Context) *OrganizationsLocationsFirewallEndpointsPatchCall {
  4297  	c.ctx_ = ctx
  4298  	return c
  4299  }
  4300  
  4301  // Header returns a http.Header that can be modified by the caller to add
  4302  // headers to the request.
  4303  func (c *OrganizationsLocationsFirewallEndpointsPatchCall) Header() http.Header {
  4304  	if c.header_ == nil {
  4305  		c.header_ = make(http.Header)
  4306  	}
  4307  	return c.header_
  4308  }
  4309  
  4310  func (c *OrganizationsLocationsFirewallEndpointsPatchCall) doRequest(alt string) (*http.Response, error) {
  4311  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  4312  	var body io.Reader = nil
  4313  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.firewallendpoint)
  4314  	if err != nil {
  4315  		return nil, err
  4316  	}
  4317  	c.urlParams_.Set("alt", alt)
  4318  	c.urlParams_.Set("prettyPrint", "false")
  4319  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  4320  	urls += "?" + c.urlParams_.Encode()
  4321  	req, err := http.NewRequest("PATCH", urls, body)
  4322  	if err != nil {
  4323  		return nil, err
  4324  	}
  4325  	req.Header = reqHeaders
  4326  	googleapi.Expand(req.URL, map[string]string{
  4327  		"name": c.name,
  4328  	})
  4329  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4330  }
  4331  
  4332  // Do executes the "networksecurity.organizations.locations.firewallEndpoints.patch" call.
  4333  // Any non-2xx status code is an error. Response headers are in either
  4334  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  4335  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  4336  // whether the returned error was because http.StatusNotModified was returned.
  4337  func (c *OrganizationsLocationsFirewallEndpointsPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  4338  	gensupport.SetOptions(c.urlParams_, opts...)
  4339  	res, err := c.doRequest("json")
  4340  	if res != nil && res.StatusCode == http.StatusNotModified {
  4341  		if res.Body != nil {
  4342  			res.Body.Close()
  4343  		}
  4344  		return nil, gensupport.WrapError(&googleapi.Error{
  4345  			Code:   res.StatusCode,
  4346  			Header: res.Header,
  4347  		})
  4348  	}
  4349  	if err != nil {
  4350  		return nil, err
  4351  	}
  4352  	defer googleapi.CloseBody(res)
  4353  	if err := googleapi.CheckResponse(res); err != nil {
  4354  		return nil, gensupport.WrapError(err)
  4355  	}
  4356  	ret := &Operation{
  4357  		ServerResponse: googleapi.ServerResponse{
  4358  			Header:         res.Header,
  4359  			HTTPStatusCode: res.StatusCode,
  4360  		},
  4361  	}
  4362  	target := &ret
  4363  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4364  		return nil, err
  4365  	}
  4366  	return ret, nil
  4367  }
  4368  
  4369  type OrganizationsLocationsOperationsCancelCall struct {
  4370  	s                      *Service
  4371  	name                   string
  4372  	canceloperationrequest *CancelOperationRequest
  4373  	urlParams_             gensupport.URLParams
  4374  	ctx_                   context.Context
  4375  	header_                http.Header
  4376  }
  4377  
  4378  // Cancel: Starts asynchronous cancellation on a long-running operation. The
  4379  // server makes a best effort to cancel the operation, but success is not
  4380  // guaranteed. If the server doesn't support this method, it returns
  4381  // `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or
  4382  // other methods to check whether the cancellation succeeded or whether the
  4383  // operation completed despite cancellation. On successful cancellation, the
  4384  // operation is not deleted; instead, it becomes an operation with an
  4385  // Operation.error value with a google.rpc.Status.code of 1, corresponding to
  4386  // `Code.CANCELLED`.
  4387  //
  4388  // - name: The name of the operation resource to be cancelled.
  4389  func (r *OrganizationsLocationsOperationsService) Cancel(name string, canceloperationrequest *CancelOperationRequest) *OrganizationsLocationsOperationsCancelCall {
  4390  	c := &OrganizationsLocationsOperationsCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4391  	c.name = name
  4392  	c.canceloperationrequest = canceloperationrequest
  4393  	return c
  4394  }
  4395  
  4396  // Fields allows partial responses to be retrieved. See
  4397  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4398  // details.
  4399  func (c *OrganizationsLocationsOperationsCancelCall) Fields(s ...googleapi.Field) *OrganizationsLocationsOperationsCancelCall {
  4400  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4401  	return c
  4402  }
  4403  
  4404  // Context sets the context to be used in this call's Do method.
  4405  func (c *OrganizationsLocationsOperationsCancelCall) Context(ctx context.Context) *OrganizationsLocationsOperationsCancelCall {
  4406  	c.ctx_ = ctx
  4407  	return c
  4408  }
  4409  
  4410  // Header returns a http.Header that can be modified by the caller to add
  4411  // headers to the request.
  4412  func (c *OrganizationsLocationsOperationsCancelCall) Header() http.Header {
  4413  	if c.header_ == nil {
  4414  		c.header_ = make(http.Header)
  4415  	}
  4416  	return c.header_
  4417  }
  4418  
  4419  func (c *OrganizationsLocationsOperationsCancelCall) doRequest(alt string) (*http.Response, error) {
  4420  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  4421  	var body io.Reader = nil
  4422  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.canceloperationrequest)
  4423  	if err != nil {
  4424  		return nil, err
  4425  	}
  4426  	c.urlParams_.Set("alt", alt)
  4427  	c.urlParams_.Set("prettyPrint", "false")
  4428  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:cancel")
  4429  	urls += "?" + c.urlParams_.Encode()
  4430  	req, err := http.NewRequest("POST", urls, body)
  4431  	if err != nil {
  4432  		return nil, err
  4433  	}
  4434  	req.Header = reqHeaders
  4435  	googleapi.Expand(req.URL, map[string]string{
  4436  		"name": c.name,
  4437  	})
  4438  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4439  }
  4440  
  4441  // Do executes the "networksecurity.organizations.locations.operations.cancel" call.
  4442  // Any non-2xx status code is an error. Response headers are in either
  4443  // *Empty.ServerResponse.Header or (if a response was returned at all) in
  4444  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  4445  // whether the returned error was because http.StatusNotModified was returned.
  4446  func (c *OrganizationsLocationsOperationsCancelCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
  4447  	gensupport.SetOptions(c.urlParams_, opts...)
  4448  	res, err := c.doRequest("json")
  4449  	if res != nil && res.StatusCode == http.StatusNotModified {
  4450  		if res.Body != nil {
  4451  			res.Body.Close()
  4452  		}
  4453  		return nil, gensupport.WrapError(&googleapi.Error{
  4454  			Code:   res.StatusCode,
  4455  			Header: res.Header,
  4456  		})
  4457  	}
  4458  	if err != nil {
  4459  		return nil, err
  4460  	}
  4461  	defer googleapi.CloseBody(res)
  4462  	if err := googleapi.CheckResponse(res); err != nil {
  4463  		return nil, gensupport.WrapError(err)
  4464  	}
  4465  	ret := &Empty{
  4466  		ServerResponse: googleapi.ServerResponse{
  4467  			Header:         res.Header,
  4468  			HTTPStatusCode: res.StatusCode,
  4469  		},
  4470  	}
  4471  	target := &ret
  4472  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4473  		return nil, err
  4474  	}
  4475  	return ret, nil
  4476  }
  4477  
  4478  type OrganizationsLocationsOperationsDeleteCall struct {
  4479  	s          *Service
  4480  	name       string
  4481  	urlParams_ gensupport.URLParams
  4482  	ctx_       context.Context
  4483  	header_    http.Header
  4484  }
  4485  
  4486  // Delete: Deletes a long-running operation. This method indicates that the
  4487  // client is no longer interested in the operation result. It does not cancel
  4488  // the operation. If the server doesn't support this method, it returns
  4489  // `google.rpc.Code.UNIMPLEMENTED`.
  4490  //
  4491  // - name: The name of the operation resource to be deleted.
  4492  func (r *OrganizationsLocationsOperationsService) Delete(name string) *OrganizationsLocationsOperationsDeleteCall {
  4493  	c := &OrganizationsLocationsOperationsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4494  	c.name = name
  4495  	return c
  4496  }
  4497  
  4498  // Fields allows partial responses to be retrieved. See
  4499  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4500  // details.
  4501  func (c *OrganizationsLocationsOperationsDeleteCall) Fields(s ...googleapi.Field) *OrganizationsLocationsOperationsDeleteCall {
  4502  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4503  	return c
  4504  }
  4505  
  4506  // Context sets the context to be used in this call's Do method.
  4507  func (c *OrganizationsLocationsOperationsDeleteCall) Context(ctx context.Context) *OrganizationsLocationsOperationsDeleteCall {
  4508  	c.ctx_ = ctx
  4509  	return c
  4510  }
  4511  
  4512  // Header returns a http.Header that can be modified by the caller to add
  4513  // headers to the request.
  4514  func (c *OrganizationsLocationsOperationsDeleteCall) Header() http.Header {
  4515  	if c.header_ == nil {
  4516  		c.header_ = make(http.Header)
  4517  	}
  4518  	return c.header_
  4519  }
  4520  
  4521  func (c *OrganizationsLocationsOperationsDeleteCall) doRequest(alt string) (*http.Response, error) {
  4522  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  4523  	var body io.Reader = nil
  4524  	c.urlParams_.Set("alt", alt)
  4525  	c.urlParams_.Set("prettyPrint", "false")
  4526  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  4527  	urls += "?" + c.urlParams_.Encode()
  4528  	req, err := http.NewRequest("DELETE", urls, body)
  4529  	if err != nil {
  4530  		return nil, err
  4531  	}
  4532  	req.Header = reqHeaders
  4533  	googleapi.Expand(req.URL, map[string]string{
  4534  		"name": c.name,
  4535  	})
  4536  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4537  }
  4538  
  4539  // Do executes the "networksecurity.organizations.locations.operations.delete" call.
  4540  // Any non-2xx status code is an error. Response headers are in either
  4541  // *Empty.ServerResponse.Header or (if a response was returned at all) in
  4542  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  4543  // whether the returned error was because http.StatusNotModified was returned.
  4544  func (c *OrganizationsLocationsOperationsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
  4545  	gensupport.SetOptions(c.urlParams_, opts...)
  4546  	res, err := c.doRequest("json")
  4547  	if res != nil && res.StatusCode == http.StatusNotModified {
  4548  		if res.Body != nil {
  4549  			res.Body.Close()
  4550  		}
  4551  		return nil, gensupport.WrapError(&googleapi.Error{
  4552  			Code:   res.StatusCode,
  4553  			Header: res.Header,
  4554  		})
  4555  	}
  4556  	if err != nil {
  4557  		return nil, err
  4558  	}
  4559  	defer googleapi.CloseBody(res)
  4560  	if err := googleapi.CheckResponse(res); err != nil {
  4561  		return nil, gensupport.WrapError(err)
  4562  	}
  4563  	ret := &Empty{
  4564  		ServerResponse: googleapi.ServerResponse{
  4565  			Header:         res.Header,
  4566  			HTTPStatusCode: res.StatusCode,
  4567  		},
  4568  	}
  4569  	target := &ret
  4570  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4571  		return nil, err
  4572  	}
  4573  	return ret, nil
  4574  }
  4575  
  4576  type OrganizationsLocationsOperationsGetCall struct {
  4577  	s            *Service
  4578  	name         string
  4579  	urlParams_   gensupport.URLParams
  4580  	ifNoneMatch_ string
  4581  	ctx_         context.Context
  4582  	header_      http.Header
  4583  }
  4584  
  4585  // Get: Gets the latest state of a long-running operation. Clients can use this
  4586  // method to poll the operation result at intervals as recommended by the API
  4587  // service.
  4588  //
  4589  // - name: The name of the operation resource.
  4590  func (r *OrganizationsLocationsOperationsService) Get(name string) *OrganizationsLocationsOperationsGetCall {
  4591  	c := &OrganizationsLocationsOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4592  	c.name = name
  4593  	return c
  4594  }
  4595  
  4596  // Fields allows partial responses to be retrieved. See
  4597  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4598  // details.
  4599  func (c *OrganizationsLocationsOperationsGetCall) Fields(s ...googleapi.Field) *OrganizationsLocationsOperationsGetCall {
  4600  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4601  	return c
  4602  }
  4603  
  4604  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  4605  // object's ETag matches the given value. This is useful for getting updates
  4606  // only after the object has changed since the last request.
  4607  func (c *OrganizationsLocationsOperationsGetCall) IfNoneMatch(entityTag string) *OrganizationsLocationsOperationsGetCall {
  4608  	c.ifNoneMatch_ = entityTag
  4609  	return c
  4610  }
  4611  
  4612  // Context sets the context to be used in this call's Do method.
  4613  func (c *OrganizationsLocationsOperationsGetCall) Context(ctx context.Context) *OrganizationsLocationsOperationsGetCall {
  4614  	c.ctx_ = ctx
  4615  	return c
  4616  }
  4617  
  4618  // Header returns a http.Header that can be modified by the caller to add
  4619  // headers to the request.
  4620  func (c *OrganizationsLocationsOperationsGetCall) Header() http.Header {
  4621  	if c.header_ == nil {
  4622  		c.header_ = make(http.Header)
  4623  	}
  4624  	return c.header_
  4625  }
  4626  
  4627  func (c *OrganizationsLocationsOperationsGetCall) doRequest(alt string) (*http.Response, error) {
  4628  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  4629  	if c.ifNoneMatch_ != "" {
  4630  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  4631  	}
  4632  	var body io.Reader = nil
  4633  	c.urlParams_.Set("alt", alt)
  4634  	c.urlParams_.Set("prettyPrint", "false")
  4635  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  4636  	urls += "?" + c.urlParams_.Encode()
  4637  	req, err := http.NewRequest("GET", urls, body)
  4638  	if err != nil {
  4639  		return nil, err
  4640  	}
  4641  	req.Header = reqHeaders
  4642  	googleapi.Expand(req.URL, map[string]string{
  4643  		"name": c.name,
  4644  	})
  4645  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4646  }
  4647  
  4648  // Do executes the "networksecurity.organizations.locations.operations.get" call.
  4649  // Any non-2xx status code is an error. Response headers are in either
  4650  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  4651  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  4652  // whether the returned error was because http.StatusNotModified was returned.
  4653  func (c *OrganizationsLocationsOperationsGetCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  4654  	gensupport.SetOptions(c.urlParams_, opts...)
  4655  	res, err := c.doRequest("json")
  4656  	if res != nil && res.StatusCode == http.StatusNotModified {
  4657  		if res.Body != nil {
  4658  			res.Body.Close()
  4659  		}
  4660  		return nil, gensupport.WrapError(&googleapi.Error{
  4661  			Code:   res.StatusCode,
  4662  			Header: res.Header,
  4663  		})
  4664  	}
  4665  	if err != nil {
  4666  		return nil, err
  4667  	}
  4668  	defer googleapi.CloseBody(res)
  4669  	if err := googleapi.CheckResponse(res); err != nil {
  4670  		return nil, gensupport.WrapError(err)
  4671  	}
  4672  	ret := &Operation{
  4673  		ServerResponse: googleapi.ServerResponse{
  4674  			Header:         res.Header,
  4675  			HTTPStatusCode: res.StatusCode,
  4676  		},
  4677  	}
  4678  	target := &ret
  4679  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4680  		return nil, err
  4681  	}
  4682  	return ret, nil
  4683  }
  4684  
  4685  type OrganizationsLocationsOperationsListCall struct {
  4686  	s            *Service
  4687  	name         string
  4688  	urlParams_   gensupport.URLParams
  4689  	ifNoneMatch_ string
  4690  	ctx_         context.Context
  4691  	header_      http.Header
  4692  }
  4693  
  4694  // List: Lists operations that match the specified filter in the request. If
  4695  // the server doesn't support this method, it returns `UNIMPLEMENTED`.
  4696  //
  4697  // - name: The name of the operation's parent resource.
  4698  func (r *OrganizationsLocationsOperationsService) List(name string) *OrganizationsLocationsOperationsListCall {
  4699  	c := &OrganizationsLocationsOperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4700  	c.name = name
  4701  	return c
  4702  }
  4703  
  4704  // Filter sets the optional parameter "filter": The standard list filter.
  4705  func (c *OrganizationsLocationsOperationsListCall) Filter(filter string) *OrganizationsLocationsOperationsListCall {
  4706  	c.urlParams_.Set("filter", filter)
  4707  	return c
  4708  }
  4709  
  4710  // PageSize sets the optional parameter "pageSize": The standard list page
  4711  // size.
  4712  func (c *OrganizationsLocationsOperationsListCall) PageSize(pageSize int64) *OrganizationsLocationsOperationsListCall {
  4713  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  4714  	return c
  4715  }
  4716  
  4717  // PageToken sets the optional parameter "pageToken": The standard list page
  4718  // token.
  4719  func (c *OrganizationsLocationsOperationsListCall) PageToken(pageToken string) *OrganizationsLocationsOperationsListCall {
  4720  	c.urlParams_.Set("pageToken", pageToken)
  4721  	return c
  4722  }
  4723  
  4724  // Fields allows partial responses to be retrieved. See
  4725  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4726  // details.
  4727  func (c *OrganizationsLocationsOperationsListCall) Fields(s ...googleapi.Field) *OrganizationsLocationsOperationsListCall {
  4728  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4729  	return c
  4730  }
  4731  
  4732  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  4733  // object's ETag matches the given value. This is useful for getting updates
  4734  // only after the object has changed since the last request.
  4735  func (c *OrganizationsLocationsOperationsListCall) IfNoneMatch(entityTag string) *OrganizationsLocationsOperationsListCall {
  4736  	c.ifNoneMatch_ = entityTag
  4737  	return c
  4738  }
  4739  
  4740  // Context sets the context to be used in this call's Do method.
  4741  func (c *OrganizationsLocationsOperationsListCall) Context(ctx context.Context) *OrganizationsLocationsOperationsListCall {
  4742  	c.ctx_ = ctx
  4743  	return c
  4744  }
  4745  
  4746  // Header returns a http.Header that can be modified by the caller to add
  4747  // headers to the request.
  4748  func (c *OrganizationsLocationsOperationsListCall) Header() http.Header {
  4749  	if c.header_ == nil {
  4750  		c.header_ = make(http.Header)
  4751  	}
  4752  	return c.header_
  4753  }
  4754  
  4755  func (c *OrganizationsLocationsOperationsListCall) doRequest(alt string) (*http.Response, error) {
  4756  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  4757  	if c.ifNoneMatch_ != "" {
  4758  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  4759  	}
  4760  	var body io.Reader = nil
  4761  	c.urlParams_.Set("alt", alt)
  4762  	c.urlParams_.Set("prettyPrint", "false")
  4763  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}/operations")
  4764  	urls += "?" + c.urlParams_.Encode()
  4765  	req, err := http.NewRequest("GET", urls, body)
  4766  	if err != nil {
  4767  		return nil, err
  4768  	}
  4769  	req.Header = reqHeaders
  4770  	googleapi.Expand(req.URL, map[string]string{
  4771  		"name": c.name,
  4772  	})
  4773  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4774  }
  4775  
  4776  // Do executes the "networksecurity.organizations.locations.operations.list" call.
  4777  // Any non-2xx status code is an error. Response headers are in either
  4778  // *ListOperationsResponse.ServerResponse.Header or (if a response was returned
  4779  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  4780  // check whether the returned error was because http.StatusNotModified was
  4781  // returned.
  4782  func (c *OrganizationsLocationsOperationsListCall) Do(opts ...googleapi.CallOption) (*ListOperationsResponse, error) {
  4783  	gensupport.SetOptions(c.urlParams_, opts...)
  4784  	res, err := c.doRequest("json")
  4785  	if res != nil && res.StatusCode == http.StatusNotModified {
  4786  		if res.Body != nil {
  4787  			res.Body.Close()
  4788  		}
  4789  		return nil, gensupport.WrapError(&googleapi.Error{
  4790  			Code:   res.StatusCode,
  4791  			Header: res.Header,
  4792  		})
  4793  	}
  4794  	if err != nil {
  4795  		return nil, err
  4796  	}
  4797  	defer googleapi.CloseBody(res)
  4798  	if err := googleapi.CheckResponse(res); err != nil {
  4799  		return nil, gensupport.WrapError(err)
  4800  	}
  4801  	ret := &ListOperationsResponse{
  4802  		ServerResponse: googleapi.ServerResponse{
  4803  			Header:         res.Header,
  4804  			HTTPStatusCode: res.StatusCode,
  4805  		},
  4806  	}
  4807  	target := &ret
  4808  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4809  		return nil, err
  4810  	}
  4811  	return ret, nil
  4812  }
  4813  
  4814  // Pages invokes f for each page of results.
  4815  // A non-nil error returned from f will halt the iteration.
  4816  // The provided context supersedes any context provided to the Context method.
  4817  func (c *OrganizationsLocationsOperationsListCall) Pages(ctx context.Context, f func(*ListOperationsResponse) error) error {
  4818  	c.ctx_ = ctx
  4819  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  4820  	for {
  4821  		x, err := c.Do()
  4822  		if err != nil {
  4823  			return err
  4824  		}
  4825  		if err := f(x); err != nil {
  4826  			return err
  4827  		}
  4828  		if x.NextPageToken == "" {
  4829  			return nil
  4830  		}
  4831  		c.PageToken(x.NextPageToken)
  4832  	}
  4833  }
  4834  
  4835  type OrganizationsLocationsSecurityProfileGroupsCreateCall struct {
  4836  	s                    *Service
  4837  	parent               string
  4838  	securityprofilegroup *SecurityProfileGroup
  4839  	urlParams_           gensupport.URLParams
  4840  	ctx_                 context.Context
  4841  	header_              http.Header
  4842  }
  4843  
  4844  // Create: Creates a new SecurityProfileGroup in a given organization and
  4845  // location.
  4846  //
  4847  //   - parent: The parent resource of the SecurityProfileGroup. Must be in the
  4848  //     format `projects|organizations/*/locations/{location}`.
  4849  func (r *OrganizationsLocationsSecurityProfileGroupsService) Create(parent string, securityprofilegroup *SecurityProfileGroup) *OrganizationsLocationsSecurityProfileGroupsCreateCall {
  4850  	c := &OrganizationsLocationsSecurityProfileGroupsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4851  	c.parent = parent
  4852  	c.securityprofilegroup = securityprofilegroup
  4853  	return c
  4854  }
  4855  
  4856  // SecurityProfileGroupId sets the optional parameter "securityProfileGroupId":
  4857  // Required. Short name of the SecurityProfileGroup resource to be created.
  4858  // This value should be 1-63 characters long, containing only letters, numbers,
  4859  // hyphens, and underscores, and should not start with a number. E.g.
  4860  // "security_profile_group1".
  4861  func (c *OrganizationsLocationsSecurityProfileGroupsCreateCall) SecurityProfileGroupId(securityProfileGroupId string) *OrganizationsLocationsSecurityProfileGroupsCreateCall {
  4862  	c.urlParams_.Set("securityProfileGroupId", securityProfileGroupId)
  4863  	return c
  4864  }
  4865  
  4866  // Fields allows partial responses to be retrieved. See
  4867  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4868  // details.
  4869  func (c *OrganizationsLocationsSecurityProfileGroupsCreateCall) Fields(s ...googleapi.Field) *OrganizationsLocationsSecurityProfileGroupsCreateCall {
  4870  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4871  	return c
  4872  }
  4873  
  4874  // Context sets the context to be used in this call's Do method.
  4875  func (c *OrganizationsLocationsSecurityProfileGroupsCreateCall) Context(ctx context.Context) *OrganizationsLocationsSecurityProfileGroupsCreateCall {
  4876  	c.ctx_ = ctx
  4877  	return c
  4878  }
  4879  
  4880  // Header returns a http.Header that can be modified by the caller to add
  4881  // headers to the request.
  4882  func (c *OrganizationsLocationsSecurityProfileGroupsCreateCall) Header() http.Header {
  4883  	if c.header_ == nil {
  4884  		c.header_ = make(http.Header)
  4885  	}
  4886  	return c.header_
  4887  }
  4888  
  4889  func (c *OrganizationsLocationsSecurityProfileGroupsCreateCall) doRequest(alt string) (*http.Response, error) {
  4890  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  4891  	var body io.Reader = nil
  4892  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.securityprofilegroup)
  4893  	if err != nil {
  4894  		return nil, err
  4895  	}
  4896  	c.urlParams_.Set("alt", alt)
  4897  	c.urlParams_.Set("prettyPrint", "false")
  4898  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/securityProfileGroups")
  4899  	urls += "?" + c.urlParams_.Encode()
  4900  	req, err := http.NewRequest("POST", urls, body)
  4901  	if err != nil {
  4902  		return nil, err
  4903  	}
  4904  	req.Header = reqHeaders
  4905  	googleapi.Expand(req.URL, map[string]string{
  4906  		"parent": c.parent,
  4907  	})
  4908  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4909  }
  4910  
  4911  // Do executes the "networksecurity.organizations.locations.securityProfileGroups.create" call.
  4912  // Any non-2xx status code is an error. Response headers are in either
  4913  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  4914  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  4915  // whether the returned error was because http.StatusNotModified was returned.
  4916  func (c *OrganizationsLocationsSecurityProfileGroupsCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  4917  	gensupport.SetOptions(c.urlParams_, opts...)
  4918  	res, err := c.doRequest("json")
  4919  	if res != nil && res.StatusCode == http.StatusNotModified {
  4920  		if res.Body != nil {
  4921  			res.Body.Close()
  4922  		}
  4923  		return nil, gensupport.WrapError(&googleapi.Error{
  4924  			Code:   res.StatusCode,
  4925  			Header: res.Header,
  4926  		})
  4927  	}
  4928  	if err != nil {
  4929  		return nil, err
  4930  	}
  4931  	defer googleapi.CloseBody(res)
  4932  	if err := googleapi.CheckResponse(res); err != nil {
  4933  		return nil, gensupport.WrapError(err)
  4934  	}
  4935  	ret := &Operation{
  4936  		ServerResponse: googleapi.ServerResponse{
  4937  			Header:         res.Header,
  4938  			HTTPStatusCode: res.StatusCode,
  4939  		},
  4940  	}
  4941  	target := &ret
  4942  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4943  		return nil, err
  4944  	}
  4945  	return ret, nil
  4946  }
  4947  
  4948  type OrganizationsLocationsSecurityProfileGroupsDeleteCall struct {
  4949  	s          *Service
  4950  	name       string
  4951  	urlParams_ gensupport.URLParams
  4952  	ctx_       context.Context
  4953  	header_    http.Header
  4954  }
  4955  
  4956  // Delete: Deletes a single SecurityProfileGroup.
  4957  //
  4958  //   - name: A name of the SecurityProfileGroup to delete. Must be in the format
  4959  //     `projects|organizations/*/locations/{location}/securityProfileGroups/{secur
  4960  //     ity_profile_group}`.
  4961  func (r *OrganizationsLocationsSecurityProfileGroupsService) Delete(name string) *OrganizationsLocationsSecurityProfileGroupsDeleteCall {
  4962  	c := &OrganizationsLocationsSecurityProfileGroupsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4963  	c.name = name
  4964  	return c
  4965  }
  4966  
  4967  // Etag sets the optional parameter "etag": If client provided etag is out of
  4968  // date, delete will return FAILED_PRECONDITION error.
  4969  func (c *OrganizationsLocationsSecurityProfileGroupsDeleteCall) Etag(etag string) *OrganizationsLocationsSecurityProfileGroupsDeleteCall {
  4970  	c.urlParams_.Set("etag", etag)
  4971  	return c
  4972  }
  4973  
  4974  // Fields allows partial responses to be retrieved. See
  4975  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4976  // details.
  4977  func (c *OrganizationsLocationsSecurityProfileGroupsDeleteCall) Fields(s ...googleapi.Field) *OrganizationsLocationsSecurityProfileGroupsDeleteCall {
  4978  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4979  	return c
  4980  }
  4981  
  4982  // Context sets the context to be used in this call's Do method.
  4983  func (c *OrganizationsLocationsSecurityProfileGroupsDeleteCall) Context(ctx context.Context) *OrganizationsLocationsSecurityProfileGroupsDeleteCall {
  4984  	c.ctx_ = ctx
  4985  	return c
  4986  }
  4987  
  4988  // Header returns a http.Header that can be modified by the caller to add
  4989  // headers to the request.
  4990  func (c *OrganizationsLocationsSecurityProfileGroupsDeleteCall) Header() http.Header {
  4991  	if c.header_ == nil {
  4992  		c.header_ = make(http.Header)
  4993  	}
  4994  	return c.header_
  4995  }
  4996  
  4997  func (c *OrganizationsLocationsSecurityProfileGroupsDeleteCall) doRequest(alt string) (*http.Response, error) {
  4998  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  4999  	var body io.Reader = nil
  5000  	c.urlParams_.Set("alt", alt)
  5001  	c.urlParams_.Set("prettyPrint", "false")
  5002  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  5003  	urls += "?" + c.urlParams_.Encode()
  5004  	req, err := http.NewRequest("DELETE", urls, body)
  5005  	if err != nil {
  5006  		return nil, err
  5007  	}
  5008  	req.Header = reqHeaders
  5009  	googleapi.Expand(req.URL, map[string]string{
  5010  		"name": c.name,
  5011  	})
  5012  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5013  }
  5014  
  5015  // Do executes the "networksecurity.organizations.locations.securityProfileGroups.delete" call.
  5016  // Any non-2xx status code is an error. Response headers are in either
  5017  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  5018  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  5019  // whether the returned error was because http.StatusNotModified was returned.
  5020  func (c *OrganizationsLocationsSecurityProfileGroupsDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  5021  	gensupport.SetOptions(c.urlParams_, opts...)
  5022  	res, err := c.doRequest("json")
  5023  	if res != nil && res.StatusCode == http.StatusNotModified {
  5024  		if res.Body != nil {
  5025  			res.Body.Close()
  5026  		}
  5027  		return nil, gensupport.WrapError(&googleapi.Error{
  5028  			Code:   res.StatusCode,
  5029  			Header: res.Header,
  5030  		})
  5031  	}
  5032  	if err != nil {
  5033  		return nil, err
  5034  	}
  5035  	defer googleapi.CloseBody(res)
  5036  	if err := googleapi.CheckResponse(res); err != nil {
  5037  		return nil, gensupport.WrapError(err)
  5038  	}
  5039  	ret := &Operation{
  5040  		ServerResponse: googleapi.ServerResponse{
  5041  			Header:         res.Header,
  5042  			HTTPStatusCode: res.StatusCode,
  5043  		},
  5044  	}
  5045  	target := &ret
  5046  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5047  		return nil, err
  5048  	}
  5049  	return ret, nil
  5050  }
  5051  
  5052  type OrganizationsLocationsSecurityProfileGroupsGetCall struct {
  5053  	s            *Service
  5054  	name         string
  5055  	urlParams_   gensupport.URLParams
  5056  	ifNoneMatch_ string
  5057  	ctx_         context.Context
  5058  	header_      http.Header
  5059  }
  5060  
  5061  // Get: Gets details of a single SecurityProfileGroup.
  5062  //
  5063  //   - name: A name of the SecurityProfileGroup to get. Must be in the format
  5064  //     `projects|organizations/*/locations/{location}/securityProfileGroups/{secur
  5065  //     ity_profile_group}`.
  5066  func (r *OrganizationsLocationsSecurityProfileGroupsService) Get(name string) *OrganizationsLocationsSecurityProfileGroupsGetCall {
  5067  	c := &OrganizationsLocationsSecurityProfileGroupsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5068  	c.name = name
  5069  	return c
  5070  }
  5071  
  5072  // Fields allows partial responses to be retrieved. See
  5073  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5074  // details.
  5075  func (c *OrganizationsLocationsSecurityProfileGroupsGetCall) Fields(s ...googleapi.Field) *OrganizationsLocationsSecurityProfileGroupsGetCall {
  5076  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5077  	return c
  5078  }
  5079  
  5080  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  5081  // object's ETag matches the given value. This is useful for getting updates
  5082  // only after the object has changed since the last request.
  5083  func (c *OrganizationsLocationsSecurityProfileGroupsGetCall) IfNoneMatch(entityTag string) *OrganizationsLocationsSecurityProfileGroupsGetCall {
  5084  	c.ifNoneMatch_ = entityTag
  5085  	return c
  5086  }
  5087  
  5088  // Context sets the context to be used in this call's Do method.
  5089  func (c *OrganizationsLocationsSecurityProfileGroupsGetCall) Context(ctx context.Context) *OrganizationsLocationsSecurityProfileGroupsGetCall {
  5090  	c.ctx_ = ctx
  5091  	return c
  5092  }
  5093  
  5094  // Header returns a http.Header that can be modified by the caller to add
  5095  // headers to the request.
  5096  func (c *OrganizationsLocationsSecurityProfileGroupsGetCall) Header() http.Header {
  5097  	if c.header_ == nil {
  5098  		c.header_ = make(http.Header)
  5099  	}
  5100  	return c.header_
  5101  }
  5102  
  5103  func (c *OrganizationsLocationsSecurityProfileGroupsGetCall) doRequest(alt string) (*http.Response, error) {
  5104  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  5105  	if c.ifNoneMatch_ != "" {
  5106  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  5107  	}
  5108  	var body io.Reader = nil
  5109  	c.urlParams_.Set("alt", alt)
  5110  	c.urlParams_.Set("prettyPrint", "false")
  5111  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  5112  	urls += "?" + c.urlParams_.Encode()
  5113  	req, err := http.NewRequest("GET", urls, body)
  5114  	if err != nil {
  5115  		return nil, err
  5116  	}
  5117  	req.Header = reqHeaders
  5118  	googleapi.Expand(req.URL, map[string]string{
  5119  		"name": c.name,
  5120  	})
  5121  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5122  }
  5123  
  5124  // Do executes the "networksecurity.organizations.locations.securityProfileGroups.get" call.
  5125  // Any non-2xx status code is an error. Response headers are in either
  5126  // *SecurityProfileGroup.ServerResponse.Header or (if a response was returned
  5127  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  5128  // check whether the returned error was because http.StatusNotModified was
  5129  // returned.
  5130  func (c *OrganizationsLocationsSecurityProfileGroupsGetCall) Do(opts ...googleapi.CallOption) (*SecurityProfileGroup, error) {
  5131  	gensupport.SetOptions(c.urlParams_, opts...)
  5132  	res, err := c.doRequest("json")
  5133  	if res != nil && res.StatusCode == http.StatusNotModified {
  5134  		if res.Body != nil {
  5135  			res.Body.Close()
  5136  		}
  5137  		return nil, gensupport.WrapError(&googleapi.Error{
  5138  			Code:   res.StatusCode,
  5139  			Header: res.Header,
  5140  		})
  5141  	}
  5142  	if err != nil {
  5143  		return nil, err
  5144  	}
  5145  	defer googleapi.CloseBody(res)
  5146  	if err := googleapi.CheckResponse(res); err != nil {
  5147  		return nil, gensupport.WrapError(err)
  5148  	}
  5149  	ret := &SecurityProfileGroup{
  5150  		ServerResponse: googleapi.ServerResponse{
  5151  			Header:         res.Header,
  5152  			HTTPStatusCode: res.StatusCode,
  5153  		},
  5154  	}
  5155  	target := &ret
  5156  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5157  		return nil, err
  5158  	}
  5159  	return ret, nil
  5160  }
  5161  
  5162  type OrganizationsLocationsSecurityProfileGroupsListCall struct {
  5163  	s            *Service
  5164  	parent       string
  5165  	urlParams_   gensupport.URLParams
  5166  	ifNoneMatch_ string
  5167  	ctx_         context.Context
  5168  	header_      http.Header
  5169  }
  5170  
  5171  // List: Lists SecurityProfileGroups in a given organization and location.
  5172  //
  5173  //   - parent: The project or organization and location from which the
  5174  //     SecurityProfileGroups should be listed, specified in the format
  5175  //     `projects|organizations/*/locations/{location}`.
  5176  func (r *OrganizationsLocationsSecurityProfileGroupsService) List(parent string) *OrganizationsLocationsSecurityProfileGroupsListCall {
  5177  	c := &OrganizationsLocationsSecurityProfileGroupsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5178  	c.parent = parent
  5179  	return c
  5180  }
  5181  
  5182  // PageSize sets the optional parameter "pageSize": Maximum number of
  5183  // SecurityProfileGroups to return per call.
  5184  func (c *OrganizationsLocationsSecurityProfileGroupsListCall) PageSize(pageSize int64) *OrganizationsLocationsSecurityProfileGroupsListCall {
  5185  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  5186  	return c
  5187  }
  5188  
  5189  // PageToken sets the optional parameter "pageToken": The value returned by the
  5190  // last `ListSecurityProfileGroupsResponse` Indicates that this is a
  5191  // continuation of a prior `ListSecurityProfileGroups` call, and that the
  5192  // system should return the next page of data.
  5193  func (c *OrganizationsLocationsSecurityProfileGroupsListCall) PageToken(pageToken string) *OrganizationsLocationsSecurityProfileGroupsListCall {
  5194  	c.urlParams_.Set("pageToken", pageToken)
  5195  	return c
  5196  }
  5197  
  5198  // Fields allows partial responses to be retrieved. See
  5199  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5200  // details.
  5201  func (c *OrganizationsLocationsSecurityProfileGroupsListCall) Fields(s ...googleapi.Field) *OrganizationsLocationsSecurityProfileGroupsListCall {
  5202  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5203  	return c
  5204  }
  5205  
  5206  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  5207  // object's ETag matches the given value. This is useful for getting updates
  5208  // only after the object has changed since the last request.
  5209  func (c *OrganizationsLocationsSecurityProfileGroupsListCall) IfNoneMatch(entityTag string) *OrganizationsLocationsSecurityProfileGroupsListCall {
  5210  	c.ifNoneMatch_ = entityTag
  5211  	return c
  5212  }
  5213  
  5214  // Context sets the context to be used in this call's Do method.
  5215  func (c *OrganizationsLocationsSecurityProfileGroupsListCall) Context(ctx context.Context) *OrganizationsLocationsSecurityProfileGroupsListCall {
  5216  	c.ctx_ = ctx
  5217  	return c
  5218  }
  5219  
  5220  // Header returns a http.Header that can be modified by the caller to add
  5221  // headers to the request.
  5222  func (c *OrganizationsLocationsSecurityProfileGroupsListCall) Header() http.Header {
  5223  	if c.header_ == nil {
  5224  		c.header_ = make(http.Header)
  5225  	}
  5226  	return c.header_
  5227  }
  5228  
  5229  func (c *OrganizationsLocationsSecurityProfileGroupsListCall) doRequest(alt string) (*http.Response, error) {
  5230  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  5231  	if c.ifNoneMatch_ != "" {
  5232  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  5233  	}
  5234  	var body io.Reader = nil
  5235  	c.urlParams_.Set("alt", alt)
  5236  	c.urlParams_.Set("prettyPrint", "false")
  5237  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/securityProfileGroups")
  5238  	urls += "?" + c.urlParams_.Encode()
  5239  	req, err := http.NewRequest("GET", urls, body)
  5240  	if err != nil {
  5241  		return nil, err
  5242  	}
  5243  	req.Header = reqHeaders
  5244  	googleapi.Expand(req.URL, map[string]string{
  5245  		"parent": c.parent,
  5246  	})
  5247  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5248  }
  5249  
  5250  // Do executes the "networksecurity.organizations.locations.securityProfileGroups.list" call.
  5251  // Any non-2xx status code is an error. Response headers are in either
  5252  // *ListSecurityProfileGroupsResponse.ServerResponse.Header or (if a response
  5253  // was returned at all) in error.(*googleapi.Error).Header. Use
  5254  // googleapi.IsNotModified to check whether the returned error was because
  5255  // http.StatusNotModified was returned.
  5256  func (c *OrganizationsLocationsSecurityProfileGroupsListCall) Do(opts ...googleapi.CallOption) (*ListSecurityProfileGroupsResponse, error) {
  5257  	gensupport.SetOptions(c.urlParams_, opts...)
  5258  	res, err := c.doRequest("json")
  5259  	if res != nil && res.StatusCode == http.StatusNotModified {
  5260  		if res.Body != nil {
  5261  			res.Body.Close()
  5262  		}
  5263  		return nil, gensupport.WrapError(&googleapi.Error{
  5264  			Code:   res.StatusCode,
  5265  			Header: res.Header,
  5266  		})
  5267  	}
  5268  	if err != nil {
  5269  		return nil, err
  5270  	}
  5271  	defer googleapi.CloseBody(res)
  5272  	if err := googleapi.CheckResponse(res); err != nil {
  5273  		return nil, gensupport.WrapError(err)
  5274  	}
  5275  	ret := &ListSecurityProfileGroupsResponse{
  5276  		ServerResponse: googleapi.ServerResponse{
  5277  			Header:         res.Header,
  5278  			HTTPStatusCode: res.StatusCode,
  5279  		},
  5280  	}
  5281  	target := &ret
  5282  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5283  		return nil, err
  5284  	}
  5285  	return ret, nil
  5286  }
  5287  
  5288  // Pages invokes f for each page of results.
  5289  // A non-nil error returned from f will halt the iteration.
  5290  // The provided context supersedes any context provided to the Context method.
  5291  func (c *OrganizationsLocationsSecurityProfileGroupsListCall) Pages(ctx context.Context, f func(*ListSecurityProfileGroupsResponse) error) error {
  5292  	c.ctx_ = ctx
  5293  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  5294  	for {
  5295  		x, err := c.Do()
  5296  		if err != nil {
  5297  			return err
  5298  		}
  5299  		if err := f(x); err != nil {
  5300  			return err
  5301  		}
  5302  		if x.NextPageToken == "" {
  5303  			return nil
  5304  		}
  5305  		c.PageToken(x.NextPageToken)
  5306  	}
  5307  }
  5308  
  5309  type OrganizationsLocationsSecurityProfileGroupsPatchCall struct {
  5310  	s                    *Service
  5311  	name                 string
  5312  	securityprofilegroup *SecurityProfileGroup
  5313  	urlParams_           gensupport.URLParams
  5314  	ctx_                 context.Context
  5315  	header_              http.Header
  5316  }
  5317  
  5318  // Patch: Updates the parameters of a single SecurityProfileGroup.
  5319  //
  5320  //   - name: Immutable. Identifier. Name of the SecurityProfileGroup resource. It
  5321  //     matches pattern
  5322  //     `projects|organizations/*/locations/{location}/securityProfileGroups/{secur
  5323  //     ity_profile_group}`.
  5324  func (r *OrganizationsLocationsSecurityProfileGroupsService) Patch(name string, securityprofilegroup *SecurityProfileGroup) *OrganizationsLocationsSecurityProfileGroupsPatchCall {
  5325  	c := &OrganizationsLocationsSecurityProfileGroupsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5326  	c.name = name
  5327  	c.securityprofilegroup = securityprofilegroup
  5328  	return c
  5329  }
  5330  
  5331  // UpdateMask sets the optional parameter "updateMask": Required. Field mask is
  5332  // used to specify the fields to be overwritten in the SecurityProfileGroup
  5333  // resource by the update. The fields specified in the update_mask are relative
  5334  // to the resource, not the full request. A field will be overwritten if it is
  5335  // in the mask.
  5336  func (c *OrganizationsLocationsSecurityProfileGroupsPatchCall) UpdateMask(updateMask string) *OrganizationsLocationsSecurityProfileGroupsPatchCall {
  5337  	c.urlParams_.Set("updateMask", updateMask)
  5338  	return c
  5339  }
  5340  
  5341  // Fields allows partial responses to be retrieved. See
  5342  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5343  // details.
  5344  func (c *OrganizationsLocationsSecurityProfileGroupsPatchCall) Fields(s ...googleapi.Field) *OrganizationsLocationsSecurityProfileGroupsPatchCall {
  5345  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5346  	return c
  5347  }
  5348  
  5349  // Context sets the context to be used in this call's Do method.
  5350  func (c *OrganizationsLocationsSecurityProfileGroupsPatchCall) Context(ctx context.Context) *OrganizationsLocationsSecurityProfileGroupsPatchCall {
  5351  	c.ctx_ = ctx
  5352  	return c
  5353  }
  5354  
  5355  // Header returns a http.Header that can be modified by the caller to add
  5356  // headers to the request.
  5357  func (c *OrganizationsLocationsSecurityProfileGroupsPatchCall) Header() http.Header {
  5358  	if c.header_ == nil {
  5359  		c.header_ = make(http.Header)
  5360  	}
  5361  	return c.header_
  5362  }
  5363  
  5364  func (c *OrganizationsLocationsSecurityProfileGroupsPatchCall) doRequest(alt string) (*http.Response, error) {
  5365  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  5366  	var body io.Reader = nil
  5367  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.securityprofilegroup)
  5368  	if err != nil {
  5369  		return nil, err
  5370  	}
  5371  	c.urlParams_.Set("alt", alt)
  5372  	c.urlParams_.Set("prettyPrint", "false")
  5373  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  5374  	urls += "?" + c.urlParams_.Encode()
  5375  	req, err := http.NewRequest("PATCH", urls, body)
  5376  	if err != nil {
  5377  		return nil, err
  5378  	}
  5379  	req.Header = reqHeaders
  5380  	googleapi.Expand(req.URL, map[string]string{
  5381  		"name": c.name,
  5382  	})
  5383  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5384  }
  5385  
  5386  // Do executes the "networksecurity.organizations.locations.securityProfileGroups.patch" call.
  5387  // Any non-2xx status code is an error. Response headers are in either
  5388  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  5389  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  5390  // whether the returned error was because http.StatusNotModified was returned.
  5391  func (c *OrganizationsLocationsSecurityProfileGroupsPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  5392  	gensupport.SetOptions(c.urlParams_, opts...)
  5393  	res, err := c.doRequest("json")
  5394  	if res != nil && res.StatusCode == http.StatusNotModified {
  5395  		if res.Body != nil {
  5396  			res.Body.Close()
  5397  		}
  5398  		return nil, gensupport.WrapError(&googleapi.Error{
  5399  			Code:   res.StatusCode,
  5400  			Header: res.Header,
  5401  		})
  5402  	}
  5403  	if err != nil {
  5404  		return nil, err
  5405  	}
  5406  	defer googleapi.CloseBody(res)
  5407  	if err := googleapi.CheckResponse(res); err != nil {
  5408  		return nil, gensupport.WrapError(err)
  5409  	}
  5410  	ret := &Operation{
  5411  		ServerResponse: googleapi.ServerResponse{
  5412  			Header:         res.Header,
  5413  			HTTPStatusCode: res.StatusCode,
  5414  		},
  5415  	}
  5416  	target := &ret
  5417  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5418  		return nil, err
  5419  	}
  5420  	return ret, nil
  5421  }
  5422  
  5423  type OrganizationsLocationsSecurityProfilesCreateCall struct {
  5424  	s               *Service
  5425  	parent          string
  5426  	securityprofile *SecurityProfile
  5427  	urlParams_      gensupport.URLParams
  5428  	ctx_            context.Context
  5429  	header_         http.Header
  5430  }
  5431  
  5432  // Create: Creates a new SecurityProfile in a given organization and location.
  5433  //
  5434  //   - parent: The parent resource of the SecurityProfile. Must be in the format
  5435  //     `projects|organizations/*/locations/{location}`.
  5436  func (r *OrganizationsLocationsSecurityProfilesService) Create(parent string, securityprofile *SecurityProfile) *OrganizationsLocationsSecurityProfilesCreateCall {
  5437  	c := &OrganizationsLocationsSecurityProfilesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5438  	c.parent = parent
  5439  	c.securityprofile = securityprofile
  5440  	return c
  5441  }
  5442  
  5443  // SecurityProfileId sets the optional parameter "securityProfileId": Required.
  5444  // Short name of the SecurityProfile resource to be created. This value should
  5445  // be 1-63 characters long, containing only letters, numbers, hyphens, and
  5446  // underscores, and should not start with a number. E.g. "security_profile1".
  5447  func (c *OrganizationsLocationsSecurityProfilesCreateCall) SecurityProfileId(securityProfileId string) *OrganizationsLocationsSecurityProfilesCreateCall {
  5448  	c.urlParams_.Set("securityProfileId", securityProfileId)
  5449  	return c
  5450  }
  5451  
  5452  // Fields allows partial responses to be retrieved. See
  5453  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5454  // details.
  5455  func (c *OrganizationsLocationsSecurityProfilesCreateCall) Fields(s ...googleapi.Field) *OrganizationsLocationsSecurityProfilesCreateCall {
  5456  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5457  	return c
  5458  }
  5459  
  5460  // Context sets the context to be used in this call's Do method.
  5461  func (c *OrganizationsLocationsSecurityProfilesCreateCall) Context(ctx context.Context) *OrganizationsLocationsSecurityProfilesCreateCall {
  5462  	c.ctx_ = ctx
  5463  	return c
  5464  }
  5465  
  5466  // Header returns a http.Header that can be modified by the caller to add
  5467  // headers to the request.
  5468  func (c *OrganizationsLocationsSecurityProfilesCreateCall) Header() http.Header {
  5469  	if c.header_ == nil {
  5470  		c.header_ = make(http.Header)
  5471  	}
  5472  	return c.header_
  5473  }
  5474  
  5475  func (c *OrganizationsLocationsSecurityProfilesCreateCall) doRequest(alt string) (*http.Response, error) {
  5476  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  5477  	var body io.Reader = nil
  5478  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.securityprofile)
  5479  	if err != nil {
  5480  		return nil, err
  5481  	}
  5482  	c.urlParams_.Set("alt", alt)
  5483  	c.urlParams_.Set("prettyPrint", "false")
  5484  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/securityProfiles")
  5485  	urls += "?" + c.urlParams_.Encode()
  5486  	req, err := http.NewRequest("POST", urls, body)
  5487  	if err != nil {
  5488  		return nil, err
  5489  	}
  5490  	req.Header = reqHeaders
  5491  	googleapi.Expand(req.URL, map[string]string{
  5492  		"parent": c.parent,
  5493  	})
  5494  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5495  }
  5496  
  5497  // Do executes the "networksecurity.organizations.locations.securityProfiles.create" call.
  5498  // Any non-2xx status code is an error. Response headers are in either
  5499  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  5500  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  5501  // whether the returned error was because http.StatusNotModified was returned.
  5502  func (c *OrganizationsLocationsSecurityProfilesCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  5503  	gensupport.SetOptions(c.urlParams_, opts...)
  5504  	res, err := c.doRequest("json")
  5505  	if res != nil && res.StatusCode == http.StatusNotModified {
  5506  		if res.Body != nil {
  5507  			res.Body.Close()
  5508  		}
  5509  		return nil, gensupport.WrapError(&googleapi.Error{
  5510  			Code:   res.StatusCode,
  5511  			Header: res.Header,
  5512  		})
  5513  	}
  5514  	if err != nil {
  5515  		return nil, err
  5516  	}
  5517  	defer googleapi.CloseBody(res)
  5518  	if err := googleapi.CheckResponse(res); err != nil {
  5519  		return nil, gensupport.WrapError(err)
  5520  	}
  5521  	ret := &Operation{
  5522  		ServerResponse: googleapi.ServerResponse{
  5523  			Header:         res.Header,
  5524  			HTTPStatusCode: res.StatusCode,
  5525  		},
  5526  	}
  5527  	target := &ret
  5528  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5529  		return nil, err
  5530  	}
  5531  	return ret, nil
  5532  }
  5533  
  5534  type OrganizationsLocationsSecurityProfilesDeleteCall 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 single SecurityProfile.
  5543  //
  5544  //   - name: A name of the SecurityProfile to delete. Must be in the format
  5545  //     `projects|organizations/*/locations/{location}/securityProfiles/{security_p
  5546  //     rofile_id}`.
  5547  func (r *OrganizationsLocationsSecurityProfilesService) Delete(name string) *OrganizationsLocationsSecurityProfilesDeleteCall {
  5548  	c := &OrganizationsLocationsSecurityProfilesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5549  	c.name = name
  5550  	return c
  5551  }
  5552  
  5553  // Etag sets the optional parameter "etag": If client provided etag is out of
  5554  // date, delete will return FAILED_PRECONDITION error.
  5555  func (c *OrganizationsLocationsSecurityProfilesDeleteCall) Etag(etag string) *OrganizationsLocationsSecurityProfilesDeleteCall {
  5556  	c.urlParams_.Set("etag", etag)
  5557  	return c
  5558  }
  5559  
  5560  // Fields allows partial responses to be retrieved. See
  5561  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5562  // details.
  5563  func (c *OrganizationsLocationsSecurityProfilesDeleteCall) Fields(s ...googleapi.Field) *OrganizationsLocationsSecurityProfilesDeleteCall {
  5564  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5565  	return c
  5566  }
  5567  
  5568  // Context sets the context to be used in this call's Do method.
  5569  func (c *OrganizationsLocationsSecurityProfilesDeleteCall) Context(ctx context.Context) *OrganizationsLocationsSecurityProfilesDeleteCall {
  5570  	c.ctx_ = ctx
  5571  	return c
  5572  }
  5573  
  5574  // Header returns a http.Header that can be modified by the caller to add
  5575  // headers to the request.
  5576  func (c *OrganizationsLocationsSecurityProfilesDeleteCall) Header() http.Header {
  5577  	if c.header_ == nil {
  5578  		c.header_ = make(http.Header)
  5579  	}
  5580  	return c.header_
  5581  }
  5582  
  5583  func (c *OrganizationsLocationsSecurityProfilesDeleteCall) doRequest(alt string) (*http.Response, error) {
  5584  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  5585  	var body io.Reader = nil
  5586  	c.urlParams_.Set("alt", alt)
  5587  	c.urlParams_.Set("prettyPrint", "false")
  5588  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  5589  	urls += "?" + c.urlParams_.Encode()
  5590  	req, err := http.NewRequest("DELETE", urls, body)
  5591  	if err != nil {
  5592  		return nil, err
  5593  	}
  5594  	req.Header = reqHeaders
  5595  	googleapi.Expand(req.URL, map[string]string{
  5596  		"name": c.name,
  5597  	})
  5598  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5599  }
  5600  
  5601  // Do executes the "networksecurity.organizations.locations.securityProfiles.delete" call.
  5602  // Any non-2xx status code is an error. Response headers are in either
  5603  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  5604  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  5605  // whether the returned error was because http.StatusNotModified was returned.
  5606  func (c *OrganizationsLocationsSecurityProfilesDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  5607  	gensupport.SetOptions(c.urlParams_, opts...)
  5608  	res, err := c.doRequest("json")
  5609  	if res != nil && res.StatusCode == http.StatusNotModified {
  5610  		if res.Body != nil {
  5611  			res.Body.Close()
  5612  		}
  5613  		return nil, gensupport.WrapError(&googleapi.Error{
  5614  			Code:   res.StatusCode,
  5615  			Header: res.Header,
  5616  		})
  5617  	}
  5618  	if err != nil {
  5619  		return nil, err
  5620  	}
  5621  	defer googleapi.CloseBody(res)
  5622  	if err := googleapi.CheckResponse(res); err != nil {
  5623  		return nil, gensupport.WrapError(err)
  5624  	}
  5625  	ret := &Operation{
  5626  		ServerResponse: googleapi.ServerResponse{
  5627  			Header:         res.Header,
  5628  			HTTPStatusCode: res.StatusCode,
  5629  		},
  5630  	}
  5631  	target := &ret
  5632  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5633  		return nil, err
  5634  	}
  5635  	return ret, nil
  5636  }
  5637  
  5638  type OrganizationsLocationsSecurityProfilesGetCall struct {
  5639  	s            *Service
  5640  	name         string
  5641  	urlParams_   gensupport.URLParams
  5642  	ifNoneMatch_ string
  5643  	ctx_         context.Context
  5644  	header_      http.Header
  5645  }
  5646  
  5647  // Get: Gets details of a single SecurityProfile.
  5648  //
  5649  //   - name: A name of the SecurityProfile to get. Must be in the format
  5650  //     `projects|organizations/*/locations/{location}/securityProfiles/{security_p
  5651  //     rofile_id}`.
  5652  func (r *OrganizationsLocationsSecurityProfilesService) Get(name string) *OrganizationsLocationsSecurityProfilesGetCall {
  5653  	c := &OrganizationsLocationsSecurityProfilesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5654  	c.name = name
  5655  	return c
  5656  }
  5657  
  5658  // Fields allows partial responses to be retrieved. See
  5659  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5660  // details.
  5661  func (c *OrganizationsLocationsSecurityProfilesGetCall) Fields(s ...googleapi.Field) *OrganizationsLocationsSecurityProfilesGetCall {
  5662  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5663  	return c
  5664  }
  5665  
  5666  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  5667  // object's ETag matches the given value. This is useful for getting updates
  5668  // only after the object has changed since the last request.
  5669  func (c *OrganizationsLocationsSecurityProfilesGetCall) IfNoneMatch(entityTag string) *OrganizationsLocationsSecurityProfilesGetCall {
  5670  	c.ifNoneMatch_ = entityTag
  5671  	return c
  5672  }
  5673  
  5674  // Context sets the context to be used in this call's Do method.
  5675  func (c *OrganizationsLocationsSecurityProfilesGetCall) Context(ctx context.Context) *OrganizationsLocationsSecurityProfilesGetCall {
  5676  	c.ctx_ = ctx
  5677  	return c
  5678  }
  5679  
  5680  // Header returns a http.Header that can be modified by the caller to add
  5681  // headers to the request.
  5682  func (c *OrganizationsLocationsSecurityProfilesGetCall) Header() http.Header {
  5683  	if c.header_ == nil {
  5684  		c.header_ = make(http.Header)
  5685  	}
  5686  	return c.header_
  5687  }
  5688  
  5689  func (c *OrganizationsLocationsSecurityProfilesGetCall) doRequest(alt string) (*http.Response, error) {
  5690  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  5691  	if c.ifNoneMatch_ != "" {
  5692  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  5693  	}
  5694  	var body io.Reader = nil
  5695  	c.urlParams_.Set("alt", alt)
  5696  	c.urlParams_.Set("prettyPrint", "false")
  5697  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  5698  	urls += "?" + c.urlParams_.Encode()
  5699  	req, err := http.NewRequest("GET", urls, body)
  5700  	if err != nil {
  5701  		return nil, err
  5702  	}
  5703  	req.Header = reqHeaders
  5704  	googleapi.Expand(req.URL, map[string]string{
  5705  		"name": c.name,
  5706  	})
  5707  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5708  }
  5709  
  5710  // Do executes the "networksecurity.organizations.locations.securityProfiles.get" call.
  5711  // Any non-2xx status code is an error. Response headers are in either
  5712  // *SecurityProfile.ServerResponse.Header or (if a response was returned at
  5713  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  5714  // check whether the returned error was because http.StatusNotModified was
  5715  // returned.
  5716  func (c *OrganizationsLocationsSecurityProfilesGetCall) Do(opts ...googleapi.CallOption) (*SecurityProfile, error) {
  5717  	gensupport.SetOptions(c.urlParams_, opts...)
  5718  	res, err := c.doRequest("json")
  5719  	if res != nil && res.StatusCode == http.StatusNotModified {
  5720  		if res.Body != nil {
  5721  			res.Body.Close()
  5722  		}
  5723  		return nil, gensupport.WrapError(&googleapi.Error{
  5724  			Code:   res.StatusCode,
  5725  			Header: res.Header,
  5726  		})
  5727  	}
  5728  	if err != nil {
  5729  		return nil, err
  5730  	}
  5731  	defer googleapi.CloseBody(res)
  5732  	if err := googleapi.CheckResponse(res); err != nil {
  5733  		return nil, gensupport.WrapError(err)
  5734  	}
  5735  	ret := &SecurityProfile{
  5736  		ServerResponse: googleapi.ServerResponse{
  5737  			Header:         res.Header,
  5738  			HTTPStatusCode: res.StatusCode,
  5739  		},
  5740  	}
  5741  	target := &ret
  5742  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5743  		return nil, err
  5744  	}
  5745  	return ret, nil
  5746  }
  5747  
  5748  type OrganizationsLocationsSecurityProfilesListCall struct {
  5749  	s            *Service
  5750  	parent       string
  5751  	urlParams_   gensupport.URLParams
  5752  	ifNoneMatch_ string
  5753  	ctx_         context.Context
  5754  	header_      http.Header
  5755  }
  5756  
  5757  // List: Lists SecurityProfiles in a given organization and location.
  5758  //
  5759  //   - parent: The project or organization and location from which the
  5760  //     SecurityProfiles should be listed, specified in the format
  5761  //     `projects|organizations/*/locations/{location}`.
  5762  func (r *OrganizationsLocationsSecurityProfilesService) List(parent string) *OrganizationsLocationsSecurityProfilesListCall {
  5763  	c := &OrganizationsLocationsSecurityProfilesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5764  	c.parent = parent
  5765  	return c
  5766  }
  5767  
  5768  // PageSize sets the optional parameter "pageSize": Maximum number of
  5769  // SecurityProfiles to return per call.
  5770  func (c *OrganizationsLocationsSecurityProfilesListCall) PageSize(pageSize int64) *OrganizationsLocationsSecurityProfilesListCall {
  5771  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  5772  	return c
  5773  }
  5774  
  5775  // PageToken sets the optional parameter "pageToken": The value returned by the
  5776  // last `ListSecurityProfilesResponse` Indicates that this is a continuation of
  5777  // a prior `ListSecurityProfiles` call, and that the system should return the
  5778  // next page of data.
  5779  func (c *OrganizationsLocationsSecurityProfilesListCall) PageToken(pageToken string) *OrganizationsLocationsSecurityProfilesListCall {
  5780  	c.urlParams_.Set("pageToken", pageToken)
  5781  	return c
  5782  }
  5783  
  5784  // Fields allows partial responses to be retrieved. See
  5785  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5786  // details.
  5787  func (c *OrganizationsLocationsSecurityProfilesListCall) Fields(s ...googleapi.Field) *OrganizationsLocationsSecurityProfilesListCall {
  5788  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5789  	return c
  5790  }
  5791  
  5792  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  5793  // object's ETag matches the given value. This is useful for getting updates
  5794  // only after the object has changed since the last request.
  5795  func (c *OrganizationsLocationsSecurityProfilesListCall) IfNoneMatch(entityTag string) *OrganizationsLocationsSecurityProfilesListCall {
  5796  	c.ifNoneMatch_ = entityTag
  5797  	return c
  5798  }
  5799  
  5800  // Context sets the context to be used in this call's Do method.
  5801  func (c *OrganizationsLocationsSecurityProfilesListCall) Context(ctx context.Context) *OrganizationsLocationsSecurityProfilesListCall {
  5802  	c.ctx_ = ctx
  5803  	return c
  5804  }
  5805  
  5806  // Header returns a http.Header that can be modified by the caller to add
  5807  // headers to the request.
  5808  func (c *OrganizationsLocationsSecurityProfilesListCall) Header() http.Header {
  5809  	if c.header_ == nil {
  5810  		c.header_ = make(http.Header)
  5811  	}
  5812  	return c.header_
  5813  }
  5814  
  5815  func (c *OrganizationsLocationsSecurityProfilesListCall) doRequest(alt string) (*http.Response, error) {
  5816  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  5817  	if c.ifNoneMatch_ != "" {
  5818  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  5819  	}
  5820  	var body io.Reader = nil
  5821  	c.urlParams_.Set("alt", alt)
  5822  	c.urlParams_.Set("prettyPrint", "false")
  5823  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/securityProfiles")
  5824  	urls += "?" + c.urlParams_.Encode()
  5825  	req, err := http.NewRequest("GET", urls, body)
  5826  	if err != nil {
  5827  		return nil, err
  5828  	}
  5829  	req.Header = reqHeaders
  5830  	googleapi.Expand(req.URL, map[string]string{
  5831  		"parent": c.parent,
  5832  	})
  5833  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5834  }
  5835  
  5836  // Do executes the "networksecurity.organizations.locations.securityProfiles.list" call.
  5837  // Any non-2xx status code is an error. Response headers are in either
  5838  // *ListSecurityProfilesResponse.ServerResponse.Header or (if a response was
  5839  // returned at all) in error.(*googleapi.Error).Header. Use
  5840  // googleapi.IsNotModified to check whether the returned error was because
  5841  // http.StatusNotModified was returned.
  5842  func (c *OrganizationsLocationsSecurityProfilesListCall) Do(opts ...googleapi.CallOption) (*ListSecurityProfilesResponse, error) {
  5843  	gensupport.SetOptions(c.urlParams_, opts...)
  5844  	res, err := c.doRequest("json")
  5845  	if res != nil && res.StatusCode == http.StatusNotModified {
  5846  		if res.Body != nil {
  5847  			res.Body.Close()
  5848  		}
  5849  		return nil, gensupport.WrapError(&googleapi.Error{
  5850  			Code:   res.StatusCode,
  5851  			Header: res.Header,
  5852  		})
  5853  	}
  5854  	if err != nil {
  5855  		return nil, err
  5856  	}
  5857  	defer googleapi.CloseBody(res)
  5858  	if err := googleapi.CheckResponse(res); err != nil {
  5859  		return nil, gensupport.WrapError(err)
  5860  	}
  5861  	ret := &ListSecurityProfilesResponse{
  5862  		ServerResponse: googleapi.ServerResponse{
  5863  			Header:         res.Header,
  5864  			HTTPStatusCode: res.StatusCode,
  5865  		},
  5866  	}
  5867  	target := &ret
  5868  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5869  		return nil, err
  5870  	}
  5871  	return ret, nil
  5872  }
  5873  
  5874  // Pages invokes f for each page of results.
  5875  // A non-nil error returned from f will halt the iteration.
  5876  // The provided context supersedes any context provided to the Context method.
  5877  func (c *OrganizationsLocationsSecurityProfilesListCall) Pages(ctx context.Context, f func(*ListSecurityProfilesResponse) error) error {
  5878  	c.ctx_ = ctx
  5879  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  5880  	for {
  5881  		x, err := c.Do()
  5882  		if err != nil {
  5883  			return err
  5884  		}
  5885  		if err := f(x); err != nil {
  5886  			return err
  5887  		}
  5888  		if x.NextPageToken == "" {
  5889  			return nil
  5890  		}
  5891  		c.PageToken(x.NextPageToken)
  5892  	}
  5893  }
  5894  
  5895  type OrganizationsLocationsSecurityProfilesPatchCall struct {
  5896  	s               *Service
  5897  	name            string
  5898  	securityprofile *SecurityProfile
  5899  	urlParams_      gensupport.URLParams
  5900  	ctx_            context.Context
  5901  	header_         http.Header
  5902  }
  5903  
  5904  // Patch: Updates the parameters of a single SecurityProfile.
  5905  //
  5906  //   - name: Immutable. Identifier. Name of the SecurityProfile resource. It
  5907  //     matches pattern
  5908  //     `projects|organizations/*/locations/{location}/securityProfiles/{security_p
  5909  //     rofile}`.
  5910  func (r *OrganizationsLocationsSecurityProfilesService) Patch(name string, securityprofile *SecurityProfile) *OrganizationsLocationsSecurityProfilesPatchCall {
  5911  	c := &OrganizationsLocationsSecurityProfilesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5912  	c.name = name
  5913  	c.securityprofile = securityprofile
  5914  	return c
  5915  }
  5916  
  5917  // UpdateMask sets the optional parameter "updateMask": Required. Field mask is
  5918  // used to specify the fields to be overwritten in the SecurityProfile resource
  5919  // by the update. The fields specified in the update_mask are relative to the
  5920  // resource, not the full request. A field will be overwritten if it is in the
  5921  // mask.
  5922  func (c *OrganizationsLocationsSecurityProfilesPatchCall) UpdateMask(updateMask string) *OrganizationsLocationsSecurityProfilesPatchCall {
  5923  	c.urlParams_.Set("updateMask", updateMask)
  5924  	return c
  5925  }
  5926  
  5927  // Fields allows partial responses to be retrieved. See
  5928  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5929  // details.
  5930  func (c *OrganizationsLocationsSecurityProfilesPatchCall) Fields(s ...googleapi.Field) *OrganizationsLocationsSecurityProfilesPatchCall {
  5931  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5932  	return c
  5933  }
  5934  
  5935  // Context sets the context to be used in this call's Do method.
  5936  func (c *OrganizationsLocationsSecurityProfilesPatchCall) Context(ctx context.Context) *OrganizationsLocationsSecurityProfilesPatchCall {
  5937  	c.ctx_ = ctx
  5938  	return c
  5939  }
  5940  
  5941  // Header returns a http.Header that can be modified by the caller to add
  5942  // headers to the request.
  5943  func (c *OrganizationsLocationsSecurityProfilesPatchCall) Header() http.Header {
  5944  	if c.header_ == nil {
  5945  		c.header_ = make(http.Header)
  5946  	}
  5947  	return c.header_
  5948  }
  5949  
  5950  func (c *OrganizationsLocationsSecurityProfilesPatchCall) doRequest(alt string) (*http.Response, error) {
  5951  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  5952  	var body io.Reader = nil
  5953  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.securityprofile)
  5954  	if err != nil {
  5955  		return nil, err
  5956  	}
  5957  	c.urlParams_.Set("alt", alt)
  5958  	c.urlParams_.Set("prettyPrint", "false")
  5959  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  5960  	urls += "?" + c.urlParams_.Encode()
  5961  	req, err := http.NewRequest("PATCH", urls, body)
  5962  	if err != nil {
  5963  		return nil, err
  5964  	}
  5965  	req.Header = reqHeaders
  5966  	googleapi.Expand(req.URL, map[string]string{
  5967  		"name": c.name,
  5968  	})
  5969  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5970  }
  5971  
  5972  // Do executes the "networksecurity.organizations.locations.securityProfiles.patch" call.
  5973  // Any non-2xx status code is an error. Response headers are in either
  5974  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  5975  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  5976  // whether the returned error was because http.StatusNotModified was returned.
  5977  func (c *OrganizationsLocationsSecurityProfilesPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  5978  	gensupport.SetOptions(c.urlParams_, opts...)
  5979  	res, err := c.doRequest("json")
  5980  	if res != nil && res.StatusCode == http.StatusNotModified {
  5981  		if res.Body != nil {
  5982  			res.Body.Close()
  5983  		}
  5984  		return nil, gensupport.WrapError(&googleapi.Error{
  5985  			Code:   res.StatusCode,
  5986  			Header: res.Header,
  5987  		})
  5988  	}
  5989  	if err != nil {
  5990  		return nil, err
  5991  	}
  5992  	defer googleapi.CloseBody(res)
  5993  	if err := googleapi.CheckResponse(res); err != nil {
  5994  		return nil, gensupport.WrapError(err)
  5995  	}
  5996  	ret := &Operation{
  5997  		ServerResponse: googleapi.ServerResponse{
  5998  			Header:         res.Header,
  5999  			HTTPStatusCode: res.StatusCode,
  6000  		},
  6001  	}
  6002  	target := &ret
  6003  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6004  		return nil, err
  6005  	}
  6006  	return ret, nil
  6007  }
  6008  
  6009  type ProjectsLocationsGetCall struct {
  6010  	s            *Service
  6011  	name         string
  6012  	urlParams_   gensupport.URLParams
  6013  	ifNoneMatch_ string
  6014  	ctx_         context.Context
  6015  	header_      http.Header
  6016  }
  6017  
  6018  // Get: Gets information about a location.
  6019  //
  6020  // - name: Resource name for the location.
  6021  func (r *ProjectsLocationsService) Get(name string) *ProjectsLocationsGetCall {
  6022  	c := &ProjectsLocationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6023  	c.name = name
  6024  	return c
  6025  }
  6026  
  6027  // Fields allows partial responses to be retrieved. See
  6028  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6029  // details.
  6030  func (c *ProjectsLocationsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsGetCall {
  6031  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6032  	return c
  6033  }
  6034  
  6035  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  6036  // object's ETag matches the given value. This is useful for getting updates
  6037  // only after the object has changed since the last request.
  6038  func (c *ProjectsLocationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsGetCall {
  6039  	c.ifNoneMatch_ = entityTag
  6040  	return c
  6041  }
  6042  
  6043  // Context sets the context to be used in this call's Do method.
  6044  func (c *ProjectsLocationsGetCall) Context(ctx context.Context) *ProjectsLocationsGetCall {
  6045  	c.ctx_ = ctx
  6046  	return c
  6047  }
  6048  
  6049  // Header returns a http.Header that can be modified by the caller to add
  6050  // headers to the request.
  6051  func (c *ProjectsLocationsGetCall) Header() http.Header {
  6052  	if c.header_ == nil {
  6053  		c.header_ = make(http.Header)
  6054  	}
  6055  	return c.header_
  6056  }
  6057  
  6058  func (c *ProjectsLocationsGetCall) doRequest(alt string) (*http.Response, error) {
  6059  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  6060  	if c.ifNoneMatch_ != "" {
  6061  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  6062  	}
  6063  	var body io.Reader = nil
  6064  	c.urlParams_.Set("alt", alt)
  6065  	c.urlParams_.Set("prettyPrint", "false")
  6066  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  6067  	urls += "?" + c.urlParams_.Encode()
  6068  	req, err := http.NewRequest("GET", urls, body)
  6069  	if err != nil {
  6070  		return nil, err
  6071  	}
  6072  	req.Header = reqHeaders
  6073  	googleapi.Expand(req.URL, map[string]string{
  6074  		"name": c.name,
  6075  	})
  6076  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6077  }
  6078  
  6079  // Do executes the "networksecurity.projects.locations.get" call.
  6080  // Any non-2xx status code is an error. Response headers are in either
  6081  // *Location.ServerResponse.Header or (if a response was returned at all) in
  6082  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  6083  // whether the returned error was because http.StatusNotModified was returned.
  6084  func (c *ProjectsLocationsGetCall) Do(opts ...googleapi.CallOption) (*Location, error) {
  6085  	gensupport.SetOptions(c.urlParams_, opts...)
  6086  	res, err := c.doRequest("json")
  6087  	if res != nil && res.StatusCode == http.StatusNotModified {
  6088  		if res.Body != nil {
  6089  			res.Body.Close()
  6090  		}
  6091  		return nil, gensupport.WrapError(&googleapi.Error{
  6092  			Code:   res.StatusCode,
  6093  			Header: res.Header,
  6094  		})
  6095  	}
  6096  	if err != nil {
  6097  		return nil, err
  6098  	}
  6099  	defer googleapi.CloseBody(res)
  6100  	if err := googleapi.CheckResponse(res); err != nil {
  6101  		return nil, gensupport.WrapError(err)
  6102  	}
  6103  	ret := &Location{
  6104  		ServerResponse: googleapi.ServerResponse{
  6105  			Header:         res.Header,
  6106  			HTTPStatusCode: res.StatusCode,
  6107  		},
  6108  	}
  6109  	target := &ret
  6110  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6111  		return nil, err
  6112  	}
  6113  	return ret, nil
  6114  }
  6115  
  6116  type ProjectsLocationsListCall struct {
  6117  	s            *Service
  6118  	name         string
  6119  	urlParams_   gensupport.URLParams
  6120  	ifNoneMatch_ string
  6121  	ctx_         context.Context
  6122  	header_      http.Header
  6123  }
  6124  
  6125  // List: Lists information about the supported locations for this service.
  6126  //
  6127  // - name: The resource that owns the locations collection, if applicable.
  6128  func (r *ProjectsLocationsService) List(name string) *ProjectsLocationsListCall {
  6129  	c := &ProjectsLocationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6130  	c.name = name
  6131  	return c
  6132  }
  6133  
  6134  // Filter sets the optional parameter "filter": A filter to narrow down results
  6135  // to a preferred subset. The filtering language accepts strings like
  6136  // "displayName=tokyo", and is documented in more detail in AIP-160
  6137  // (https://google.aip.dev/160).
  6138  func (c *ProjectsLocationsListCall) Filter(filter string) *ProjectsLocationsListCall {
  6139  	c.urlParams_.Set("filter", filter)
  6140  	return c
  6141  }
  6142  
  6143  // PageSize sets the optional parameter "pageSize": The maximum number of
  6144  // results to return. If not set, the service selects a default.
  6145  func (c *ProjectsLocationsListCall) PageSize(pageSize int64) *ProjectsLocationsListCall {
  6146  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  6147  	return c
  6148  }
  6149  
  6150  // PageToken sets the optional parameter "pageToken": A page token received
  6151  // from the `next_page_token` field in the response. Send that page token to
  6152  // receive the subsequent page.
  6153  func (c *ProjectsLocationsListCall) PageToken(pageToken string) *ProjectsLocationsListCall {
  6154  	c.urlParams_.Set("pageToken", pageToken)
  6155  	return c
  6156  }
  6157  
  6158  // Fields allows partial responses to be retrieved. See
  6159  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6160  // details.
  6161  func (c *ProjectsLocationsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsListCall {
  6162  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6163  	return c
  6164  }
  6165  
  6166  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  6167  // object's ETag matches the given value. This is useful for getting updates
  6168  // only after the object has changed since the last request.
  6169  func (c *ProjectsLocationsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsListCall {
  6170  	c.ifNoneMatch_ = entityTag
  6171  	return c
  6172  }
  6173  
  6174  // Context sets the context to be used in this call's Do method.
  6175  func (c *ProjectsLocationsListCall) Context(ctx context.Context) *ProjectsLocationsListCall {
  6176  	c.ctx_ = ctx
  6177  	return c
  6178  }
  6179  
  6180  // Header returns a http.Header that can be modified by the caller to add
  6181  // headers to the request.
  6182  func (c *ProjectsLocationsListCall) Header() http.Header {
  6183  	if c.header_ == nil {
  6184  		c.header_ = make(http.Header)
  6185  	}
  6186  	return c.header_
  6187  }
  6188  
  6189  func (c *ProjectsLocationsListCall) doRequest(alt string) (*http.Response, error) {
  6190  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  6191  	if c.ifNoneMatch_ != "" {
  6192  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  6193  	}
  6194  	var body io.Reader = nil
  6195  	c.urlParams_.Set("alt", alt)
  6196  	c.urlParams_.Set("prettyPrint", "false")
  6197  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}/locations")
  6198  	urls += "?" + c.urlParams_.Encode()
  6199  	req, err := http.NewRequest("GET", urls, body)
  6200  	if err != nil {
  6201  		return nil, err
  6202  	}
  6203  	req.Header = reqHeaders
  6204  	googleapi.Expand(req.URL, map[string]string{
  6205  		"name": c.name,
  6206  	})
  6207  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6208  }
  6209  
  6210  // Do executes the "networksecurity.projects.locations.list" call.
  6211  // Any non-2xx status code is an error. Response headers are in either
  6212  // *ListLocationsResponse.ServerResponse.Header or (if a response was returned
  6213  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  6214  // check whether the returned error was because http.StatusNotModified was
  6215  // returned.
  6216  func (c *ProjectsLocationsListCall) Do(opts ...googleapi.CallOption) (*ListLocationsResponse, error) {
  6217  	gensupport.SetOptions(c.urlParams_, opts...)
  6218  	res, err := c.doRequest("json")
  6219  	if res != nil && res.StatusCode == http.StatusNotModified {
  6220  		if res.Body != nil {
  6221  			res.Body.Close()
  6222  		}
  6223  		return nil, gensupport.WrapError(&googleapi.Error{
  6224  			Code:   res.StatusCode,
  6225  			Header: res.Header,
  6226  		})
  6227  	}
  6228  	if err != nil {
  6229  		return nil, err
  6230  	}
  6231  	defer googleapi.CloseBody(res)
  6232  	if err := googleapi.CheckResponse(res); err != nil {
  6233  		return nil, gensupport.WrapError(err)
  6234  	}
  6235  	ret := &ListLocationsResponse{
  6236  		ServerResponse: googleapi.ServerResponse{
  6237  			Header:         res.Header,
  6238  			HTTPStatusCode: res.StatusCode,
  6239  		},
  6240  	}
  6241  	target := &ret
  6242  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6243  		return nil, err
  6244  	}
  6245  	return ret, nil
  6246  }
  6247  
  6248  // Pages invokes f for each page of results.
  6249  // A non-nil error returned from f will halt the iteration.
  6250  // The provided context supersedes any context provided to the Context method.
  6251  func (c *ProjectsLocationsListCall) Pages(ctx context.Context, f func(*ListLocationsResponse) error) error {
  6252  	c.ctx_ = ctx
  6253  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  6254  	for {
  6255  		x, err := c.Do()
  6256  		if err != nil {
  6257  			return err
  6258  		}
  6259  		if err := f(x); err != nil {
  6260  			return err
  6261  		}
  6262  		if x.NextPageToken == "" {
  6263  			return nil
  6264  		}
  6265  		c.PageToken(x.NextPageToken)
  6266  	}
  6267  }
  6268  
  6269  type ProjectsLocationsAddressGroupsAddItemsCall struct {
  6270  	s                           *Service
  6271  	addressGroup                string
  6272  	addaddressgroupitemsrequest *AddAddressGroupItemsRequest
  6273  	urlParams_                  gensupport.URLParams
  6274  	ctx_                        context.Context
  6275  	header_                     http.Header
  6276  }
  6277  
  6278  // AddItems: Adds items to an address group.
  6279  //
  6280  //   - addressGroup: A name of the AddressGroup to add items to. Must be in the
  6281  //     format `projects|organization/*/locations/{location}/addressGroups/*`.
  6282  func (r *ProjectsLocationsAddressGroupsService) AddItems(addressGroup string, addaddressgroupitemsrequest *AddAddressGroupItemsRequest) *ProjectsLocationsAddressGroupsAddItemsCall {
  6283  	c := &ProjectsLocationsAddressGroupsAddItemsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6284  	c.addressGroup = addressGroup
  6285  	c.addaddressgroupitemsrequest = addaddressgroupitemsrequest
  6286  	return c
  6287  }
  6288  
  6289  // Fields allows partial responses to be retrieved. See
  6290  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6291  // details.
  6292  func (c *ProjectsLocationsAddressGroupsAddItemsCall) Fields(s ...googleapi.Field) *ProjectsLocationsAddressGroupsAddItemsCall {
  6293  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6294  	return c
  6295  }
  6296  
  6297  // Context sets the context to be used in this call's Do method.
  6298  func (c *ProjectsLocationsAddressGroupsAddItemsCall) Context(ctx context.Context) *ProjectsLocationsAddressGroupsAddItemsCall {
  6299  	c.ctx_ = ctx
  6300  	return c
  6301  }
  6302  
  6303  // Header returns a http.Header that can be modified by the caller to add
  6304  // headers to the request.
  6305  func (c *ProjectsLocationsAddressGroupsAddItemsCall) Header() http.Header {
  6306  	if c.header_ == nil {
  6307  		c.header_ = make(http.Header)
  6308  	}
  6309  	return c.header_
  6310  }
  6311  
  6312  func (c *ProjectsLocationsAddressGroupsAddItemsCall) doRequest(alt string) (*http.Response, error) {
  6313  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  6314  	var body io.Reader = nil
  6315  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.addaddressgroupitemsrequest)
  6316  	if err != nil {
  6317  		return nil, err
  6318  	}
  6319  	c.urlParams_.Set("alt", alt)
  6320  	c.urlParams_.Set("prettyPrint", "false")
  6321  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+addressGroup}:addItems")
  6322  	urls += "?" + c.urlParams_.Encode()
  6323  	req, err := http.NewRequest("POST", urls, body)
  6324  	if err != nil {
  6325  		return nil, err
  6326  	}
  6327  	req.Header = reqHeaders
  6328  	googleapi.Expand(req.URL, map[string]string{
  6329  		"addressGroup": c.addressGroup,
  6330  	})
  6331  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6332  }
  6333  
  6334  // Do executes the "networksecurity.projects.locations.addressGroups.addItems" call.
  6335  // Any non-2xx status code is an error. Response headers are in either
  6336  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  6337  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  6338  // whether the returned error was because http.StatusNotModified was returned.
  6339  func (c *ProjectsLocationsAddressGroupsAddItemsCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  6340  	gensupport.SetOptions(c.urlParams_, opts...)
  6341  	res, err := c.doRequest("json")
  6342  	if res != nil && res.StatusCode == http.StatusNotModified {
  6343  		if res.Body != nil {
  6344  			res.Body.Close()
  6345  		}
  6346  		return nil, gensupport.WrapError(&googleapi.Error{
  6347  			Code:   res.StatusCode,
  6348  			Header: res.Header,
  6349  		})
  6350  	}
  6351  	if err != nil {
  6352  		return nil, err
  6353  	}
  6354  	defer googleapi.CloseBody(res)
  6355  	if err := googleapi.CheckResponse(res); err != nil {
  6356  		return nil, gensupport.WrapError(err)
  6357  	}
  6358  	ret := &Operation{
  6359  		ServerResponse: googleapi.ServerResponse{
  6360  			Header:         res.Header,
  6361  			HTTPStatusCode: res.StatusCode,
  6362  		},
  6363  	}
  6364  	target := &ret
  6365  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6366  		return nil, err
  6367  	}
  6368  	return ret, nil
  6369  }
  6370  
  6371  type ProjectsLocationsAddressGroupsCloneItemsCall struct {
  6372  	s                             *Service
  6373  	addressGroup                  string
  6374  	cloneaddressgroupitemsrequest *CloneAddressGroupItemsRequest
  6375  	urlParams_                    gensupport.URLParams
  6376  	ctx_                          context.Context
  6377  	header_                       http.Header
  6378  }
  6379  
  6380  // CloneItems: Clones items from one address group to another.
  6381  //
  6382  //   - addressGroup: A name of the AddressGroup to clone items to. Must be in the
  6383  //     format `projects|organization/*/locations/{location}/addressGroups/*`.
  6384  func (r *ProjectsLocationsAddressGroupsService) CloneItems(addressGroup string, cloneaddressgroupitemsrequest *CloneAddressGroupItemsRequest) *ProjectsLocationsAddressGroupsCloneItemsCall {
  6385  	c := &ProjectsLocationsAddressGroupsCloneItemsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6386  	c.addressGroup = addressGroup
  6387  	c.cloneaddressgroupitemsrequest = cloneaddressgroupitemsrequest
  6388  	return c
  6389  }
  6390  
  6391  // Fields allows partial responses to be retrieved. See
  6392  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6393  // details.
  6394  func (c *ProjectsLocationsAddressGroupsCloneItemsCall) Fields(s ...googleapi.Field) *ProjectsLocationsAddressGroupsCloneItemsCall {
  6395  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6396  	return c
  6397  }
  6398  
  6399  // Context sets the context to be used in this call's Do method.
  6400  func (c *ProjectsLocationsAddressGroupsCloneItemsCall) Context(ctx context.Context) *ProjectsLocationsAddressGroupsCloneItemsCall {
  6401  	c.ctx_ = ctx
  6402  	return c
  6403  }
  6404  
  6405  // Header returns a http.Header that can be modified by the caller to add
  6406  // headers to the request.
  6407  func (c *ProjectsLocationsAddressGroupsCloneItemsCall) Header() http.Header {
  6408  	if c.header_ == nil {
  6409  		c.header_ = make(http.Header)
  6410  	}
  6411  	return c.header_
  6412  }
  6413  
  6414  func (c *ProjectsLocationsAddressGroupsCloneItemsCall) doRequest(alt string) (*http.Response, error) {
  6415  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  6416  	var body io.Reader = nil
  6417  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.cloneaddressgroupitemsrequest)
  6418  	if err != nil {
  6419  		return nil, err
  6420  	}
  6421  	c.urlParams_.Set("alt", alt)
  6422  	c.urlParams_.Set("prettyPrint", "false")
  6423  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+addressGroup}:cloneItems")
  6424  	urls += "?" + c.urlParams_.Encode()
  6425  	req, err := http.NewRequest("POST", urls, body)
  6426  	if err != nil {
  6427  		return nil, err
  6428  	}
  6429  	req.Header = reqHeaders
  6430  	googleapi.Expand(req.URL, map[string]string{
  6431  		"addressGroup": c.addressGroup,
  6432  	})
  6433  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6434  }
  6435  
  6436  // Do executes the "networksecurity.projects.locations.addressGroups.cloneItems" call.
  6437  // Any non-2xx status code is an error. Response headers are in either
  6438  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  6439  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  6440  // whether the returned error was because http.StatusNotModified was returned.
  6441  func (c *ProjectsLocationsAddressGroupsCloneItemsCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  6442  	gensupport.SetOptions(c.urlParams_, opts...)
  6443  	res, err := c.doRequest("json")
  6444  	if res != nil && res.StatusCode == http.StatusNotModified {
  6445  		if res.Body != nil {
  6446  			res.Body.Close()
  6447  		}
  6448  		return nil, gensupport.WrapError(&googleapi.Error{
  6449  			Code:   res.StatusCode,
  6450  			Header: res.Header,
  6451  		})
  6452  	}
  6453  	if err != nil {
  6454  		return nil, err
  6455  	}
  6456  	defer googleapi.CloseBody(res)
  6457  	if err := googleapi.CheckResponse(res); err != nil {
  6458  		return nil, gensupport.WrapError(err)
  6459  	}
  6460  	ret := &Operation{
  6461  		ServerResponse: googleapi.ServerResponse{
  6462  			Header:         res.Header,
  6463  			HTTPStatusCode: res.StatusCode,
  6464  		},
  6465  	}
  6466  	target := &ret
  6467  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6468  		return nil, err
  6469  	}
  6470  	return ret, nil
  6471  }
  6472  
  6473  type ProjectsLocationsAddressGroupsCreateCall struct {
  6474  	s            *Service
  6475  	parent       string
  6476  	addressgroup *AddressGroup
  6477  	urlParams_   gensupport.URLParams
  6478  	ctx_         context.Context
  6479  	header_      http.Header
  6480  }
  6481  
  6482  // Create: Creates a new address group in a given project and location.
  6483  //
  6484  //   - parent: The parent resource of the AddressGroup. Must be in the format
  6485  //     `projects/*/locations/{location}`.
  6486  func (r *ProjectsLocationsAddressGroupsService) Create(parent string, addressgroup *AddressGroup) *ProjectsLocationsAddressGroupsCreateCall {
  6487  	c := &ProjectsLocationsAddressGroupsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6488  	c.parent = parent
  6489  	c.addressgroup = addressgroup
  6490  	return c
  6491  }
  6492  
  6493  // AddressGroupId sets the optional parameter "addressGroupId": Required. Short
  6494  // name of the AddressGroup resource to be created. This value should be 1-63
  6495  // characters long, containing only letters, numbers, hyphens, and underscores,
  6496  // and should not start with a number. E.g. "authz_policy".
  6497  func (c *ProjectsLocationsAddressGroupsCreateCall) AddressGroupId(addressGroupId string) *ProjectsLocationsAddressGroupsCreateCall {
  6498  	c.urlParams_.Set("addressGroupId", addressGroupId)
  6499  	return c
  6500  }
  6501  
  6502  // RequestId sets the optional parameter "requestId": An optional request ID to
  6503  // identify requests. Specify a unique request ID so that if you must retry
  6504  // your request, the server will know to ignore the request if it has already
  6505  // been completed. The server will guarantee that for at least 60 minutes since
  6506  // the first request. For example, consider a situation where you make an
  6507  // initial request and the request times out. If you make the request again
  6508  // with the same request ID, the server can check if original operation with
  6509  // the same request ID was received, and if so, will ignore the second request.
  6510  // This prevents clients from accidentally creating duplicate commitments. The
  6511  // request ID must be a valid UUID with the exception that zero UUID is not
  6512  // supported (00000000-0000-0000-0000-000000000000).
  6513  func (c *ProjectsLocationsAddressGroupsCreateCall) RequestId(requestId string) *ProjectsLocationsAddressGroupsCreateCall {
  6514  	c.urlParams_.Set("requestId", requestId)
  6515  	return c
  6516  }
  6517  
  6518  // Fields allows partial responses to be retrieved. See
  6519  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6520  // details.
  6521  func (c *ProjectsLocationsAddressGroupsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAddressGroupsCreateCall {
  6522  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6523  	return c
  6524  }
  6525  
  6526  // Context sets the context to be used in this call's Do method.
  6527  func (c *ProjectsLocationsAddressGroupsCreateCall) Context(ctx context.Context) *ProjectsLocationsAddressGroupsCreateCall {
  6528  	c.ctx_ = ctx
  6529  	return c
  6530  }
  6531  
  6532  // Header returns a http.Header that can be modified by the caller to add
  6533  // headers to the request.
  6534  func (c *ProjectsLocationsAddressGroupsCreateCall) Header() http.Header {
  6535  	if c.header_ == nil {
  6536  		c.header_ = make(http.Header)
  6537  	}
  6538  	return c.header_
  6539  }
  6540  
  6541  func (c *ProjectsLocationsAddressGroupsCreateCall) doRequest(alt string) (*http.Response, error) {
  6542  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  6543  	var body io.Reader = nil
  6544  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.addressgroup)
  6545  	if err != nil {
  6546  		return nil, err
  6547  	}
  6548  	c.urlParams_.Set("alt", alt)
  6549  	c.urlParams_.Set("prettyPrint", "false")
  6550  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/addressGroups")
  6551  	urls += "?" + c.urlParams_.Encode()
  6552  	req, err := http.NewRequest("POST", urls, body)
  6553  	if err != nil {
  6554  		return nil, err
  6555  	}
  6556  	req.Header = reqHeaders
  6557  	googleapi.Expand(req.URL, map[string]string{
  6558  		"parent": c.parent,
  6559  	})
  6560  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6561  }
  6562  
  6563  // Do executes the "networksecurity.projects.locations.addressGroups.create" call.
  6564  // Any non-2xx status code is an error. Response headers are in either
  6565  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  6566  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  6567  // whether the returned error was because http.StatusNotModified was returned.
  6568  func (c *ProjectsLocationsAddressGroupsCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  6569  	gensupport.SetOptions(c.urlParams_, opts...)
  6570  	res, err := c.doRequest("json")
  6571  	if res != nil && res.StatusCode == http.StatusNotModified {
  6572  		if res.Body != nil {
  6573  			res.Body.Close()
  6574  		}
  6575  		return nil, gensupport.WrapError(&googleapi.Error{
  6576  			Code:   res.StatusCode,
  6577  			Header: res.Header,
  6578  		})
  6579  	}
  6580  	if err != nil {
  6581  		return nil, err
  6582  	}
  6583  	defer googleapi.CloseBody(res)
  6584  	if err := googleapi.CheckResponse(res); err != nil {
  6585  		return nil, gensupport.WrapError(err)
  6586  	}
  6587  	ret := &Operation{
  6588  		ServerResponse: googleapi.ServerResponse{
  6589  			Header:         res.Header,
  6590  			HTTPStatusCode: res.StatusCode,
  6591  		},
  6592  	}
  6593  	target := &ret
  6594  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6595  		return nil, err
  6596  	}
  6597  	return ret, nil
  6598  }
  6599  
  6600  type ProjectsLocationsAddressGroupsDeleteCall struct {
  6601  	s          *Service
  6602  	name       string
  6603  	urlParams_ gensupport.URLParams
  6604  	ctx_       context.Context
  6605  	header_    http.Header
  6606  }
  6607  
  6608  // Delete: Deletes a single address group.
  6609  //
  6610  //   - name: A name of the AddressGroup to delete. Must be in the format
  6611  //     `projects/*/locations/{location}/addressGroups/*`.
  6612  func (r *ProjectsLocationsAddressGroupsService) Delete(name string) *ProjectsLocationsAddressGroupsDeleteCall {
  6613  	c := &ProjectsLocationsAddressGroupsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6614  	c.name = name
  6615  	return c
  6616  }
  6617  
  6618  // RequestId sets the optional parameter "requestId": An optional request ID to
  6619  // identify requests. Specify a unique request ID so that if you must retry
  6620  // your request, the server will know to ignore the request if it has already
  6621  // been completed. The server will guarantee that for at least 60 minutes since
  6622  // the first request. For example, consider a situation where you make an
  6623  // initial request and the request times out. If you make the request again
  6624  // with the same request ID, the server can check if original operation with
  6625  // the same request ID was received, and if so, will ignore the second request.
  6626  // This prevents clients from accidentally creating duplicate commitments. The
  6627  // request ID must be a valid UUID with the exception that zero UUID is not
  6628  // supported (00000000-0000-0000-0000-000000000000).
  6629  func (c *ProjectsLocationsAddressGroupsDeleteCall) RequestId(requestId string) *ProjectsLocationsAddressGroupsDeleteCall {
  6630  	c.urlParams_.Set("requestId", requestId)
  6631  	return c
  6632  }
  6633  
  6634  // Fields allows partial responses to be retrieved. See
  6635  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6636  // details.
  6637  func (c *ProjectsLocationsAddressGroupsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAddressGroupsDeleteCall {
  6638  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6639  	return c
  6640  }
  6641  
  6642  // Context sets the context to be used in this call's Do method.
  6643  func (c *ProjectsLocationsAddressGroupsDeleteCall) Context(ctx context.Context) *ProjectsLocationsAddressGroupsDeleteCall {
  6644  	c.ctx_ = ctx
  6645  	return c
  6646  }
  6647  
  6648  // Header returns a http.Header that can be modified by the caller to add
  6649  // headers to the request.
  6650  func (c *ProjectsLocationsAddressGroupsDeleteCall) Header() http.Header {
  6651  	if c.header_ == nil {
  6652  		c.header_ = make(http.Header)
  6653  	}
  6654  	return c.header_
  6655  }
  6656  
  6657  func (c *ProjectsLocationsAddressGroupsDeleteCall) doRequest(alt string) (*http.Response, error) {
  6658  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  6659  	var body io.Reader = nil
  6660  	c.urlParams_.Set("alt", alt)
  6661  	c.urlParams_.Set("prettyPrint", "false")
  6662  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  6663  	urls += "?" + c.urlParams_.Encode()
  6664  	req, err := http.NewRequest("DELETE", urls, body)
  6665  	if err != nil {
  6666  		return nil, err
  6667  	}
  6668  	req.Header = reqHeaders
  6669  	googleapi.Expand(req.URL, map[string]string{
  6670  		"name": c.name,
  6671  	})
  6672  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6673  }
  6674  
  6675  // Do executes the "networksecurity.projects.locations.addressGroups.delete" call.
  6676  // Any non-2xx status code is an error. Response headers are in either
  6677  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  6678  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  6679  // whether the returned error was because http.StatusNotModified was returned.
  6680  func (c *ProjectsLocationsAddressGroupsDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  6681  	gensupport.SetOptions(c.urlParams_, opts...)
  6682  	res, err := c.doRequest("json")
  6683  	if res != nil && res.StatusCode == http.StatusNotModified {
  6684  		if res.Body != nil {
  6685  			res.Body.Close()
  6686  		}
  6687  		return nil, gensupport.WrapError(&googleapi.Error{
  6688  			Code:   res.StatusCode,
  6689  			Header: res.Header,
  6690  		})
  6691  	}
  6692  	if err != nil {
  6693  		return nil, err
  6694  	}
  6695  	defer googleapi.CloseBody(res)
  6696  	if err := googleapi.CheckResponse(res); err != nil {
  6697  		return nil, gensupport.WrapError(err)
  6698  	}
  6699  	ret := &Operation{
  6700  		ServerResponse: googleapi.ServerResponse{
  6701  			Header:         res.Header,
  6702  			HTTPStatusCode: res.StatusCode,
  6703  		},
  6704  	}
  6705  	target := &ret
  6706  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6707  		return nil, err
  6708  	}
  6709  	return ret, nil
  6710  }
  6711  
  6712  type ProjectsLocationsAddressGroupsGetCall struct {
  6713  	s            *Service
  6714  	name         string
  6715  	urlParams_   gensupport.URLParams
  6716  	ifNoneMatch_ string
  6717  	ctx_         context.Context
  6718  	header_      http.Header
  6719  }
  6720  
  6721  // Get: Gets details of a single address group.
  6722  //
  6723  //   - name: A name of the AddressGroup to get. Must be in the format
  6724  //     `projects/*/locations/{location}/addressGroups/*`.
  6725  func (r *ProjectsLocationsAddressGroupsService) Get(name string) *ProjectsLocationsAddressGroupsGetCall {
  6726  	c := &ProjectsLocationsAddressGroupsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6727  	c.name = name
  6728  	return c
  6729  }
  6730  
  6731  // Fields allows partial responses to be retrieved. See
  6732  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6733  // details.
  6734  func (c *ProjectsLocationsAddressGroupsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAddressGroupsGetCall {
  6735  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6736  	return c
  6737  }
  6738  
  6739  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  6740  // object's ETag matches the given value. This is useful for getting updates
  6741  // only after the object has changed since the last request.
  6742  func (c *ProjectsLocationsAddressGroupsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAddressGroupsGetCall {
  6743  	c.ifNoneMatch_ = entityTag
  6744  	return c
  6745  }
  6746  
  6747  // Context sets the context to be used in this call's Do method.
  6748  func (c *ProjectsLocationsAddressGroupsGetCall) Context(ctx context.Context) *ProjectsLocationsAddressGroupsGetCall {
  6749  	c.ctx_ = ctx
  6750  	return c
  6751  }
  6752  
  6753  // Header returns a http.Header that can be modified by the caller to add
  6754  // headers to the request.
  6755  func (c *ProjectsLocationsAddressGroupsGetCall) Header() http.Header {
  6756  	if c.header_ == nil {
  6757  		c.header_ = make(http.Header)
  6758  	}
  6759  	return c.header_
  6760  }
  6761  
  6762  func (c *ProjectsLocationsAddressGroupsGetCall) doRequest(alt string) (*http.Response, error) {
  6763  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  6764  	if c.ifNoneMatch_ != "" {
  6765  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  6766  	}
  6767  	var body io.Reader = nil
  6768  	c.urlParams_.Set("alt", alt)
  6769  	c.urlParams_.Set("prettyPrint", "false")
  6770  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  6771  	urls += "?" + c.urlParams_.Encode()
  6772  	req, err := http.NewRequest("GET", urls, body)
  6773  	if err != nil {
  6774  		return nil, err
  6775  	}
  6776  	req.Header = reqHeaders
  6777  	googleapi.Expand(req.URL, map[string]string{
  6778  		"name": c.name,
  6779  	})
  6780  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6781  }
  6782  
  6783  // Do executes the "networksecurity.projects.locations.addressGroups.get" call.
  6784  // Any non-2xx status code is an error. Response headers are in either
  6785  // *AddressGroup.ServerResponse.Header or (if a response was returned at all)
  6786  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  6787  // whether the returned error was because http.StatusNotModified was returned.
  6788  func (c *ProjectsLocationsAddressGroupsGetCall) Do(opts ...googleapi.CallOption) (*AddressGroup, error) {
  6789  	gensupport.SetOptions(c.urlParams_, opts...)
  6790  	res, err := c.doRequest("json")
  6791  	if res != nil && res.StatusCode == http.StatusNotModified {
  6792  		if res.Body != nil {
  6793  			res.Body.Close()
  6794  		}
  6795  		return nil, gensupport.WrapError(&googleapi.Error{
  6796  			Code:   res.StatusCode,
  6797  			Header: res.Header,
  6798  		})
  6799  	}
  6800  	if err != nil {
  6801  		return nil, err
  6802  	}
  6803  	defer googleapi.CloseBody(res)
  6804  	if err := googleapi.CheckResponse(res); err != nil {
  6805  		return nil, gensupport.WrapError(err)
  6806  	}
  6807  	ret := &AddressGroup{
  6808  		ServerResponse: googleapi.ServerResponse{
  6809  			Header:         res.Header,
  6810  			HTTPStatusCode: res.StatusCode,
  6811  		},
  6812  	}
  6813  	target := &ret
  6814  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6815  		return nil, err
  6816  	}
  6817  	return ret, nil
  6818  }
  6819  
  6820  type ProjectsLocationsAddressGroupsGetIamPolicyCall struct {
  6821  	s            *Service
  6822  	resource     string
  6823  	urlParams_   gensupport.URLParams
  6824  	ifNoneMatch_ string
  6825  	ctx_         context.Context
  6826  	header_      http.Header
  6827  }
  6828  
  6829  // GetIamPolicy: Gets the access control policy for a resource. Returns an
  6830  // empty policy if the resource exists and does not have a policy set.
  6831  //
  6832  //   - resource: REQUIRED: The resource for which the policy is being requested.
  6833  //     See Resource names (https://cloud.google.com/apis/design/resource_names)
  6834  //     for the appropriate value for this field.
  6835  func (r *ProjectsLocationsAddressGroupsService) GetIamPolicy(resource string) *ProjectsLocationsAddressGroupsGetIamPolicyCall {
  6836  	c := &ProjectsLocationsAddressGroupsGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6837  	c.resource = resource
  6838  	return c
  6839  }
  6840  
  6841  // OptionsRequestedPolicyVersion sets the optional parameter
  6842  // "options.requestedPolicyVersion": The maximum policy version that will be
  6843  // used to format the policy. Valid values are 0, 1, and 3. Requests specifying
  6844  // an invalid value will be rejected. Requests for policies with any
  6845  // conditional role bindings must specify version 3. Policies with no
  6846  // conditional role bindings may specify any valid value or leave the field
  6847  // unset. The policy in the response might use the policy version that you
  6848  // specified, or it might use a lower policy version. For example, if you
  6849  // specify version 3, but the policy has no conditional role bindings, the
  6850  // response uses version 1. To learn which resources support conditions in
  6851  // their IAM policies, see the IAM documentation
  6852  // (https://cloud.google.com/iam/help/conditions/resource-policies).
  6853  func (c *ProjectsLocationsAddressGroupsGetIamPolicyCall) OptionsRequestedPolicyVersion(optionsRequestedPolicyVersion int64) *ProjectsLocationsAddressGroupsGetIamPolicyCall {
  6854  	c.urlParams_.Set("options.requestedPolicyVersion", fmt.Sprint(optionsRequestedPolicyVersion))
  6855  	return c
  6856  }
  6857  
  6858  // Fields allows partial responses to be retrieved. See
  6859  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6860  // details.
  6861  func (c *ProjectsLocationsAddressGroupsGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsAddressGroupsGetIamPolicyCall {
  6862  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6863  	return c
  6864  }
  6865  
  6866  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  6867  // object's ETag matches the given value. This is useful for getting updates
  6868  // only after the object has changed since the last request.
  6869  func (c *ProjectsLocationsAddressGroupsGetIamPolicyCall) IfNoneMatch(entityTag string) *ProjectsLocationsAddressGroupsGetIamPolicyCall {
  6870  	c.ifNoneMatch_ = entityTag
  6871  	return c
  6872  }
  6873  
  6874  // Context sets the context to be used in this call's Do method.
  6875  func (c *ProjectsLocationsAddressGroupsGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsAddressGroupsGetIamPolicyCall {
  6876  	c.ctx_ = ctx
  6877  	return c
  6878  }
  6879  
  6880  // Header returns a http.Header that can be modified by the caller to add
  6881  // headers to the request.
  6882  func (c *ProjectsLocationsAddressGroupsGetIamPolicyCall) Header() http.Header {
  6883  	if c.header_ == nil {
  6884  		c.header_ = make(http.Header)
  6885  	}
  6886  	return c.header_
  6887  }
  6888  
  6889  func (c *ProjectsLocationsAddressGroupsGetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
  6890  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  6891  	if c.ifNoneMatch_ != "" {
  6892  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  6893  	}
  6894  	var body io.Reader = nil
  6895  	c.urlParams_.Set("alt", alt)
  6896  	c.urlParams_.Set("prettyPrint", "false")
  6897  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:getIamPolicy")
  6898  	urls += "?" + c.urlParams_.Encode()
  6899  	req, err := http.NewRequest("GET", urls, body)
  6900  	if err != nil {
  6901  		return nil, err
  6902  	}
  6903  	req.Header = reqHeaders
  6904  	googleapi.Expand(req.URL, map[string]string{
  6905  		"resource": c.resource,
  6906  	})
  6907  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6908  }
  6909  
  6910  // Do executes the "networksecurity.projects.locations.addressGroups.getIamPolicy" call.
  6911  // Any non-2xx status code is an error. Response headers are in either
  6912  // *GoogleIamV1Policy.ServerResponse.Header or (if a response was returned at
  6913  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  6914  // check whether the returned error was because http.StatusNotModified was
  6915  // returned.
  6916  func (c *ProjectsLocationsAddressGroupsGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1Policy, error) {
  6917  	gensupport.SetOptions(c.urlParams_, opts...)
  6918  	res, err := c.doRequest("json")
  6919  	if res != nil && res.StatusCode == http.StatusNotModified {
  6920  		if res.Body != nil {
  6921  			res.Body.Close()
  6922  		}
  6923  		return nil, gensupport.WrapError(&googleapi.Error{
  6924  			Code:   res.StatusCode,
  6925  			Header: res.Header,
  6926  		})
  6927  	}
  6928  	if err != nil {
  6929  		return nil, err
  6930  	}
  6931  	defer googleapi.CloseBody(res)
  6932  	if err := googleapi.CheckResponse(res); err != nil {
  6933  		return nil, gensupport.WrapError(err)
  6934  	}
  6935  	ret := &GoogleIamV1Policy{
  6936  		ServerResponse: googleapi.ServerResponse{
  6937  			Header:         res.Header,
  6938  			HTTPStatusCode: res.StatusCode,
  6939  		},
  6940  	}
  6941  	target := &ret
  6942  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6943  		return nil, err
  6944  	}
  6945  	return ret, nil
  6946  }
  6947  
  6948  type ProjectsLocationsAddressGroupsListCall struct {
  6949  	s            *Service
  6950  	parent       string
  6951  	urlParams_   gensupport.URLParams
  6952  	ifNoneMatch_ string
  6953  	ctx_         context.Context
  6954  	header_      http.Header
  6955  }
  6956  
  6957  // List: Lists address groups in a given project and location.
  6958  //
  6959  //   - parent: The project and location from which the AddressGroups should be
  6960  //     listed, specified in the format `projects/*/locations/{location}`.
  6961  func (r *ProjectsLocationsAddressGroupsService) List(parent string) *ProjectsLocationsAddressGroupsListCall {
  6962  	c := &ProjectsLocationsAddressGroupsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6963  	c.parent = parent
  6964  	return c
  6965  }
  6966  
  6967  // PageSize sets the optional parameter "pageSize": Maximum number of
  6968  // AddressGroups to return per call.
  6969  func (c *ProjectsLocationsAddressGroupsListCall) PageSize(pageSize int64) *ProjectsLocationsAddressGroupsListCall {
  6970  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  6971  	return c
  6972  }
  6973  
  6974  // PageToken sets the optional parameter "pageToken": The value returned by the
  6975  // last `ListAddressGroupsResponse` Indicates that this is a continuation of a
  6976  // prior `ListAddressGroups` call, and that the system should return the next
  6977  // page of data.
  6978  func (c *ProjectsLocationsAddressGroupsListCall) PageToken(pageToken string) *ProjectsLocationsAddressGroupsListCall {
  6979  	c.urlParams_.Set("pageToken", pageToken)
  6980  	return c
  6981  }
  6982  
  6983  // Fields allows partial responses to be retrieved. See
  6984  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6985  // details.
  6986  func (c *ProjectsLocationsAddressGroupsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAddressGroupsListCall {
  6987  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6988  	return c
  6989  }
  6990  
  6991  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  6992  // object's ETag matches the given value. This is useful for getting updates
  6993  // only after the object has changed since the last request.
  6994  func (c *ProjectsLocationsAddressGroupsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAddressGroupsListCall {
  6995  	c.ifNoneMatch_ = entityTag
  6996  	return c
  6997  }
  6998  
  6999  // Context sets the context to be used in this call's Do method.
  7000  func (c *ProjectsLocationsAddressGroupsListCall) Context(ctx context.Context) *ProjectsLocationsAddressGroupsListCall {
  7001  	c.ctx_ = ctx
  7002  	return c
  7003  }
  7004  
  7005  // Header returns a http.Header that can be modified by the caller to add
  7006  // headers to the request.
  7007  func (c *ProjectsLocationsAddressGroupsListCall) Header() http.Header {
  7008  	if c.header_ == nil {
  7009  		c.header_ = make(http.Header)
  7010  	}
  7011  	return c.header_
  7012  }
  7013  
  7014  func (c *ProjectsLocationsAddressGroupsListCall) doRequest(alt string) (*http.Response, error) {
  7015  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  7016  	if c.ifNoneMatch_ != "" {
  7017  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  7018  	}
  7019  	var body io.Reader = nil
  7020  	c.urlParams_.Set("alt", alt)
  7021  	c.urlParams_.Set("prettyPrint", "false")
  7022  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/addressGroups")
  7023  	urls += "?" + c.urlParams_.Encode()
  7024  	req, err := http.NewRequest("GET", urls, body)
  7025  	if err != nil {
  7026  		return nil, err
  7027  	}
  7028  	req.Header = reqHeaders
  7029  	googleapi.Expand(req.URL, map[string]string{
  7030  		"parent": c.parent,
  7031  	})
  7032  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7033  }
  7034  
  7035  // Do executes the "networksecurity.projects.locations.addressGroups.list" call.
  7036  // Any non-2xx status code is an error. Response headers are in either
  7037  // *ListAddressGroupsResponse.ServerResponse.Header or (if a response was
  7038  // returned at all) in error.(*googleapi.Error).Header. Use
  7039  // googleapi.IsNotModified to check whether the returned error was because
  7040  // http.StatusNotModified was returned.
  7041  func (c *ProjectsLocationsAddressGroupsListCall) Do(opts ...googleapi.CallOption) (*ListAddressGroupsResponse, error) {
  7042  	gensupport.SetOptions(c.urlParams_, opts...)
  7043  	res, err := c.doRequest("json")
  7044  	if res != nil && res.StatusCode == http.StatusNotModified {
  7045  		if res.Body != nil {
  7046  			res.Body.Close()
  7047  		}
  7048  		return nil, gensupport.WrapError(&googleapi.Error{
  7049  			Code:   res.StatusCode,
  7050  			Header: res.Header,
  7051  		})
  7052  	}
  7053  	if err != nil {
  7054  		return nil, err
  7055  	}
  7056  	defer googleapi.CloseBody(res)
  7057  	if err := googleapi.CheckResponse(res); err != nil {
  7058  		return nil, gensupport.WrapError(err)
  7059  	}
  7060  	ret := &ListAddressGroupsResponse{
  7061  		ServerResponse: googleapi.ServerResponse{
  7062  			Header:         res.Header,
  7063  			HTTPStatusCode: res.StatusCode,
  7064  		},
  7065  	}
  7066  	target := &ret
  7067  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7068  		return nil, err
  7069  	}
  7070  	return ret, nil
  7071  }
  7072  
  7073  // Pages invokes f for each page of results.
  7074  // A non-nil error returned from f will halt the iteration.
  7075  // The provided context supersedes any context provided to the Context method.
  7076  func (c *ProjectsLocationsAddressGroupsListCall) Pages(ctx context.Context, f func(*ListAddressGroupsResponse) error) error {
  7077  	c.ctx_ = ctx
  7078  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  7079  	for {
  7080  		x, err := c.Do()
  7081  		if err != nil {
  7082  			return err
  7083  		}
  7084  		if err := f(x); err != nil {
  7085  			return err
  7086  		}
  7087  		if x.NextPageToken == "" {
  7088  			return nil
  7089  		}
  7090  		c.PageToken(x.NextPageToken)
  7091  	}
  7092  }
  7093  
  7094  type ProjectsLocationsAddressGroupsListReferencesCall struct {
  7095  	s            *Service
  7096  	addressGroup string
  7097  	urlParams_   gensupport.URLParams
  7098  	ifNoneMatch_ string
  7099  	ctx_         context.Context
  7100  	header_      http.Header
  7101  }
  7102  
  7103  // ListReferences: Lists references of an address group.
  7104  //
  7105  //   - addressGroup: A name of the AddressGroup to clone items to. Must be in the
  7106  //     format `projects|organization/*/locations/{location}/addressGroups/*`.
  7107  func (r *ProjectsLocationsAddressGroupsService) ListReferences(addressGroup string) *ProjectsLocationsAddressGroupsListReferencesCall {
  7108  	c := &ProjectsLocationsAddressGroupsListReferencesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7109  	c.addressGroup = addressGroup
  7110  	return c
  7111  }
  7112  
  7113  // PageSize sets the optional parameter "pageSize": The maximum number of
  7114  // references to return. If unspecified, server will pick an appropriate
  7115  // default. Server may return fewer items than requested. A caller should only
  7116  // rely on response's next_page_token to determine if there are more
  7117  // AddressGroupUsers left to be queried.
  7118  func (c *ProjectsLocationsAddressGroupsListReferencesCall) PageSize(pageSize int64) *ProjectsLocationsAddressGroupsListReferencesCall {
  7119  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  7120  	return c
  7121  }
  7122  
  7123  // PageToken sets the optional parameter "pageToken": The next_page_token value
  7124  // returned from a previous List request, if any.
  7125  func (c *ProjectsLocationsAddressGroupsListReferencesCall) PageToken(pageToken string) *ProjectsLocationsAddressGroupsListReferencesCall {
  7126  	c.urlParams_.Set("pageToken", pageToken)
  7127  	return c
  7128  }
  7129  
  7130  // Fields allows partial responses to be retrieved. See
  7131  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7132  // details.
  7133  func (c *ProjectsLocationsAddressGroupsListReferencesCall) Fields(s ...googleapi.Field) *ProjectsLocationsAddressGroupsListReferencesCall {
  7134  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7135  	return c
  7136  }
  7137  
  7138  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  7139  // object's ETag matches the given value. This is useful for getting updates
  7140  // only after the object has changed since the last request.
  7141  func (c *ProjectsLocationsAddressGroupsListReferencesCall) IfNoneMatch(entityTag string) *ProjectsLocationsAddressGroupsListReferencesCall {
  7142  	c.ifNoneMatch_ = entityTag
  7143  	return c
  7144  }
  7145  
  7146  // Context sets the context to be used in this call's Do method.
  7147  func (c *ProjectsLocationsAddressGroupsListReferencesCall) Context(ctx context.Context) *ProjectsLocationsAddressGroupsListReferencesCall {
  7148  	c.ctx_ = ctx
  7149  	return c
  7150  }
  7151  
  7152  // Header returns a http.Header that can be modified by the caller to add
  7153  // headers to the request.
  7154  func (c *ProjectsLocationsAddressGroupsListReferencesCall) Header() http.Header {
  7155  	if c.header_ == nil {
  7156  		c.header_ = make(http.Header)
  7157  	}
  7158  	return c.header_
  7159  }
  7160  
  7161  func (c *ProjectsLocationsAddressGroupsListReferencesCall) doRequest(alt string) (*http.Response, error) {
  7162  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  7163  	if c.ifNoneMatch_ != "" {
  7164  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  7165  	}
  7166  	var body io.Reader = nil
  7167  	c.urlParams_.Set("alt", alt)
  7168  	c.urlParams_.Set("prettyPrint", "false")
  7169  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+addressGroup}:listReferences")
  7170  	urls += "?" + c.urlParams_.Encode()
  7171  	req, err := http.NewRequest("GET", urls, body)
  7172  	if err != nil {
  7173  		return nil, err
  7174  	}
  7175  	req.Header = reqHeaders
  7176  	googleapi.Expand(req.URL, map[string]string{
  7177  		"addressGroup": c.addressGroup,
  7178  	})
  7179  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7180  }
  7181  
  7182  // Do executes the "networksecurity.projects.locations.addressGroups.listReferences" call.
  7183  // Any non-2xx status code is an error. Response headers are in either
  7184  // *ListAddressGroupReferencesResponse.ServerResponse.Header or (if a response
  7185  // was returned at all) in error.(*googleapi.Error).Header. Use
  7186  // googleapi.IsNotModified to check whether the returned error was because
  7187  // http.StatusNotModified was returned.
  7188  func (c *ProjectsLocationsAddressGroupsListReferencesCall) Do(opts ...googleapi.CallOption) (*ListAddressGroupReferencesResponse, error) {
  7189  	gensupport.SetOptions(c.urlParams_, opts...)
  7190  	res, err := c.doRequest("json")
  7191  	if res != nil && res.StatusCode == http.StatusNotModified {
  7192  		if res.Body != nil {
  7193  			res.Body.Close()
  7194  		}
  7195  		return nil, gensupport.WrapError(&googleapi.Error{
  7196  			Code:   res.StatusCode,
  7197  			Header: res.Header,
  7198  		})
  7199  	}
  7200  	if err != nil {
  7201  		return nil, err
  7202  	}
  7203  	defer googleapi.CloseBody(res)
  7204  	if err := googleapi.CheckResponse(res); err != nil {
  7205  		return nil, gensupport.WrapError(err)
  7206  	}
  7207  	ret := &ListAddressGroupReferencesResponse{
  7208  		ServerResponse: googleapi.ServerResponse{
  7209  			Header:         res.Header,
  7210  			HTTPStatusCode: res.StatusCode,
  7211  		},
  7212  	}
  7213  	target := &ret
  7214  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7215  		return nil, err
  7216  	}
  7217  	return ret, nil
  7218  }
  7219  
  7220  // Pages invokes f for each page of results.
  7221  // A non-nil error returned from f will halt the iteration.
  7222  // The provided context supersedes any context provided to the Context method.
  7223  func (c *ProjectsLocationsAddressGroupsListReferencesCall) Pages(ctx context.Context, f func(*ListAddressGroupReferencesResponse) error) error {
  7224  	c.ctx_ = ctx
  7225  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  7226  	for {
  7227  		x, err := c.Do()
  7228  		if err != nil {
  7229  			return err
  7230  		}
  7231  		if err := f(x); err != nil {
  7232  			return err
  7233  		}
  7234  		if x.NextPageToken == "" {
  7235  			return nil
  7236  		}
  7237  		c.PageToken(x.NextPageToken)
  7238  	}
  7239  }
  7240  
  7241  type ProjectsLocationsAddressGroupsPatchCall struct {
  7242  	s            *Service
  7243  	name         string
  7244  	addressgroup *AddressGroup
  7245  	urlParams_   gensupport.URLParams
  7246  	ctx_         context.Context
  7247  	header_      http.Header
  7248  }
  7249  
  7250  // Patch: Updates the parameters of a single address group.
  7251  //
  7252  //   - name: Name of the AddressGroup resource. It matches pattern
  7253  //     `projects/*/locations/{location}/addressGroups/`.
  7254  func (r *ProjectsLocationsAddressGroupsService) Patch(name string, addressgroup *AddressGroup) *ProjectsLocationsAddressGroupsPatchCall {
  7255  	c := &ProjectsLocationsAddressGroupsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7256  	c.name = name
  7257  	c.addressgroup = addressgroup
  7258  	return c
  7259  }
  7260  
  7261  // RequestId sets the optional parameter "requestId": An optional request ID to
  7262  // identify requests. Specify a unique request ID so that if you must retry
  7263  // your request, the server will know to ignore the request if it has already
  7264  // been completed. The server will guarantee that for at least 60 minutes since
  7265  // the first request. For example, consider a situation where you make an
  7266  // initial request and the request times out. If you make the request again
  7267  // with the same request ID, the server can check if original operation with
  7268  // the same request ID was received, and if so, will ignore the second request.
  7269  // This prevents clients from accidentally creating duplicate commitments. The
  7270  // request ID must be a valid UUID with the exception that zero UUID is not
  7271  // supported (00000000-0000-0000-0000-000000000000).
  7272  func (c *ProjectsLocationsAddressGroupsPatchCall) RequestId(requestId string) *ProjectsLocationsAddressGroupsPatchCall {
  7273  	c.urlParams_.Set("requestId", requestId)
  7274  	return c
  7275  }
  7276  
  7277  // UpdateMask sets the optional parameter "updateMask": Field mask is used to
  7278  // specify the fields to be overwritten in the AddressGroup resource by the
  7279  // update. The fields specified in the update_mask are relative to the
  7280  // resource, not the full request. A field will be overwritten if it is in the
  7281  // mask. If the user does not provide a mask then all fields will be
  7282  // overwritten.
  7283  func (c *ProjectsLocationsAddressGroupsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAddressGroupsPatchCall {
  7284  	c.urlParams_.Set("updateMask", updateMask)
  7285  	return c
  7286  }
  7287  
  7288  // Fields allows partial responses to be retrieved. See
  7289  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7290  // details.
  7291  func (c *ProjectsLocationsAddressGroupsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAddressGroupsPatchCall {
  7292  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7293  	return c
  7294  }
  7295  
  7296  // Context sets the context to be used in this call's Do method.
  7297  func (c *ProjectsLocationsAddressGroupsPatchCall) Context(ctx context.Context) *ProjectsLocationsAddressGroupsPatchCall {
  7298  	c.ctx_ = ctx
  7299  	return c
  7300  }
  7301  
  7302  // Header returns a http.Header that can be modified by the caller to add
  7303  // headers to the request.
  7304  func (c *ProjectsLocationsAddressGroupsPatchCall) Header() http.Header {
  7305  	if c.header_ == nil {
  7306  		c.header_ = make(http.Header)
  7307  	}
  7308  	return c.header_
  7309  }
  7310  
  7311  func (c *ProjectsLocationsAddressGroupsPatchCall) doRequest(alt string) (*http.Response, error) {
  7312  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  7313  	var body io.Reader = nil
  7314  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.addressgroup)
  7315  	if err != nil {
  7316  		return nil, err
  7317  	}
  7318  	c.urlParams_.Set("alt", alt)
  7319  	c.urlParams_.Set("prettyPrint", "false")
  7320  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  7321  	urls += "?" + c.urlParams_.Encode()
  7322  	req, err := http.NewRequest("PATCH", urls, body)
  7323  	if err != nil {
  7324  		return nil, err
  7325  	}
  7326  	req.Header = reqHeaders
  7327  	googleapi.Expand(req.URL, map[string]string{
  7328  		"name": c.name,
  7329  	})
  7330  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7331  }
  7332  
  7333  // Do executes the "networksecurity.projects.locations.addressGroups.patch" call.
  7334  // Any non-2xx status code is an error. Response headers are in either
  7335  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  7336  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  7337  // whether the returned error was because http.StatusNotModified was returned.
  7338  func (c *ProjectsLocationsAddressGroupsPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  7339  	gensupport.SetOptions(c.urlParams_, opts...)
  7340  	res, err := c.doRequest("json")
  7341  	if res != nil && res.StatusCode == http.StatusNotModified {
  7342  		if res.Body != nil {
  7343  			res.Body.Close()
  7344  		}
  7345  		return nil, gensupport.WrapError(&googleapi.Error{
  7346  			Code:   res.StatusCode,
  7347  			Header: res.Header,
  7348  		})
  7349  	}
  7350  	if err != nil {
  7351  		return nil, err
  7352  	}
  7353  	defer googleapi.CloseBody(res)
  7354  	if err := googleapi.CheckResponse(res); err != nil {
  7355  		return nil, gensupport.WrapError(err)
  7356  	}
  7357  	ret := &Operation{
  7358  		ServerResponse: googleapi.ServerResponse{
  7359  			Header:         res.Header,
  7360  			HTTPStatusCode: res.StatusCode,
  7361  		},
  7362  	}
  7363  	target := &ret
  7364  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7365  		return nil, err
  7366  	}
  7367  	return ret, nil
  7368  }
  7369  
  7370  type ProjectsLocationsAddressGroupsRemoveItemsCall struct {
  7371  	s                              *Service
  7372  	addressGroup                   string
  7373  	removeaddressgroupitemsrequest *RemoveAddressGroupItemsRequest
  7374  	urlParams_                     gensupport.URLParams
  7375  	ctx_                           context.Context
  7376  	header_                        http.Header
  7377  }
  7378  
  7379  // RemoveItems: Removes items from an address group.
  7380  //
  7381  //   - addressGroup: A name of the AddressGroup to remove items from. Must be in
  7382  //     the format `projects|organization/*/locations/{location}/addressGroups/*`.
  7383  func (r *ProjectsLocationsAddressGroupsService) RemoveItems(addressGroup string, removeaddressgroupitemsrequest *RemoveAddressGroupItemsRequest) *ProjectsLocationsAddressGroupsRemoveItemsCall {
  7384  	c := &ProjectsLocationsAddressGroupsRemoveItemsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7385  	c.addressGroup = addressGroup
  7386  	c.removeaddressgroupitemsrequest = removeaddressgroupitemsrequest
  7387  	return c
  7388  }
  7389  
  7390  // Fields allows partial responses to be retrieved. See
  7391  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7392  // details.
  7393  func (c *ProjectsLocationsAddressGroupsRemoveItemsCall) Fields(s ...googleapi.Field) *ProjectsLocationsAddressGroupsRemoveItemsCall {
  7394  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7395  	return c
  7396  }
  7397  
  7398  // Context sets the context to be used in this call's Do method.
  7399  func (c *ProjectsLocationsAddressGroupsRemoveItemsCall) Context(ctx context.Context) *ProjectsLocationsAddressGroupsRemoveItemsCall {
  7400  	c.ctx_ = ctx
  7401  	return c
  7402  }
  7403  
  7404  // Header returns a http.Header that can be modified by the caller to add
  7405  // headers to the request.
  7406  func (c *ProjectsLocationsAddressGroupsRemoveItemsCall) Header() http.Header {
  7407  	if c.header_ == nil {
  7408  		c.header_ = make(http.Header)
  7409  	}
  7410  	return c.header_
  7411  }
  7412  
  7413  func (c *ProjectsLocationsAddressGroupsRemoveItemsCall) doRequest(alt string) (*http.Response, error) {
  7414  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  7415  	var body io.Reader = nil
  7416  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.removeaddressgroupitemsrequest)
  7417  	if err != nil {
  7418  		return nil, err
  7419  	}
  7420  	c.urlParams_.Set("alt", alt)
  7421  	c.urlParams_.Set("prettyPrint", "false")
  7422  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+addressGroup}:removeItems")
  7423  	urls += "?" + c.urlParams_.Encode()
  7424  	req, err := http.NewRequest("POST", urls, body)
  7425  	if err != nil {
  7426  		return nil, err
  7427  	}
  7428  	req.Header = reqHeaders
  7429  	googleapi.Expand(req.URL, map[string]string{
  7430  		"addressGroup": c.addressGroup,
  7431  	})
  7432  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7433  }
  7434  
  7435  // Do executes the "networksecurity.projects.locations.addressGroups.removeItems" call.
  7436  // Any non-2xx status code is an error. Response headers are in either
  7437  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  7438  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  7439  // whether the returned error was because http.StatusNotModified was returned.
  7440  func (c *ProjectsLocationsAddressGroupsRemoveItemsCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  7441  	gensupport.SetOptions(c.urlParams_, opts...)
  7442  	res, err := c.doRequest("json")
  7443  	if res != nil && res.StatusCode == http.StatusNotModified {
  7444  		if res.Body != nil {
  7445  			res.Body.Close()
  7446  		}
  7447  		return nil, gensupport.WrapError(&googleapi.Error{
  7448  			Code:   res.StatusCode,
  7449  			Header: res.Header,
  7450  		})
  7451  	}
  7452  	if err != nil {
  7453  		return nil, err
  7454  	}
  7455  	defer googleapi.CloseBody(res)
  7456  	if err := googleapi.CheckResponse(res); err != nil {
  7457  		return nil, gensupport.WrapError(err)
  7458  	}
  7459  	ret := &Operation{
  7460  		ServerResponse: googleapi.ServerResponse{
  7461  			Header:         res.Header,
  7462  			HTTPStatusCode: res.StatusCode,
  7463  		},
  7464  	}
  7465  	target := &ret
  7466  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7467  		return nil, err
  7468  	}
  7469  	return ret, nil
  7470  }
  7471  
  7472  type ProjectsLocationsAddressGroupsSetIamPolicyCall struct {
  7473  	s                              *Service
  7474  	resource                       string
  7475  	googleiamv1setiampolicyrequest *GoogleIamV1SetIamPolicyRequest
  7476  	urlParams_                     gensupport.URLParams
  7477  	ctx_                           context.Context
  7478  	header_                        http.Header
  7479  }
  7480  
  7481  // SetIamPolicy: Sets the access control policy on the specified resource.
  7482  // Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`,
  7483  // and `PERMISSION_DENIED` errors.
  7484  //
  7485  //   - resource: REQUIRED: The resource for which the policy is being specified.
  7486  //     See Resource names (https://cloud.google.com/apis/design/resource_names)
  7487  //     for the appropriate value for this field.
  7488  func (r *ProjectsLocationsAddressGroupsService) SetIamPolicy(resource string, googleiamv1setiampolicyrequest *GoogleIamV1SetIamPolicyRequest) *ProjectsLocationsAddressGroupsSetIamPolicyCall {
  7489  	c := &ProjectsLocationsAddressGroupsSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7490  	c.resource = resource
  7491  	c.googleiamv1setiampolicyrequest = googleiamv1setiampolicyrequest
  7492  	return c
  7493  }
  7494  
  7495  // Fields allows partial responses to be retrieved. See
  7496  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7497  // details.
  7498  func (c *ProjectsLocationsAddressGroupsSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsAddressGroupsSetIamPolicyCall {
  7499  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7500  	return c
  7501  }
  7502  
  7503  // Context sets the context to be used in this call's Do method.
  7504  func (c *ProjectsLocationsAddressGroupsSetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsAddressGroupsSetIamPolicyCall {
  7505  	c.ctx_ = ctx
  7506  	return c
  7507  }
  7508  
  7509  // Header returns a http.Header that can be modified by the caller to add
  7510  // headers to the request.
  7511  func (c *ProjectsLocationsAddressGroupsSetIamPolicyCall) Header() http.Header {
  7512  	if c.header_ == nil {
  7513  		c.header_ = make(http.Header)
  7514  	}
  7515  	return c.header_
  7516  }
  7517  
  7518  func (c *ProjectsLocationsAddressGroupsSetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
  7519  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  7520  	var body io.Reader = nil
  7521  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleiamv1setiampolicyrequest)
  7522  	if err != nil {
  7523  		return nil, err
  7524  	}
  7525  	c.urlParams_.Set("alt", alt)
  7526  	c.urlParams_.Set("prettyPrint", "false")
  7527  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:setIamPolicy")
  7528  	urls += "?" + c.urlParams_.Encode()
  7529  	req, err := http.NewRequest("POST", urls, body)
  7530  	if err != nil {
  7531  		return nil, err
  7532  	}
  7533  	req.Header = reqHeaders
  7534  	googleapi.Expand(req.URL, map[string]string{
  7535  		"resource": c.resource,
  7536  	})
  7537  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7538  }
  7539  
  7540  // Do executes the "networksecurity.projects.locations.addressGroups.setIamPolicy" call.
  7541  // Any non-2xx status code is an error. Response headers are in either
  7542  // *GoogleIamV1Policy.ServerResponse.Header or (if a response was returned at
  7543  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  7544  // check whether the returned error was because http.StatusNotModified was
  7545  // returned.
  7546  func (c *ProjectsLocationsAddressGroupsSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1Policy, error) {
  7547  	gensupport.SetOptions(c.urlParams_, opts...)
  7548  	res, err := c.doRequest("json")
  7549  	if res != nil && res.StatusCode == http.StatusNotModified {
  7550  		if res.Body != nil {
  7551  			res.Body.Close()
  7552  		}
  7553  		return nil, gensupport.WrapError(&googleapi.Error{
  7554  			Code:   res.StatusCode,
  7555  			Header: res.Header,
  7556  		})
  7557  	}
  7558  	if err != nil {
  7559  		return nil, err
  7560  	}
  7561  	defer googleapi.CloseBody(res)
  7562  	if err := googleapi.CheckResponse(res); err != nil {
  7563  		return nil, gensupport.WrapError(err)
  7564  	}
  7565  	ret := &GoogleIamV1Policy{
  7566  		ServerResponse: googleapi.ServerResponse{
  7567  			Header:         res.Header,
  7568  			HTTPStatusCode: res.StatusCode,
  7569  		},
  7570  	}
  7571  	target := &ret
  7572  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7573  		return nil, err
  7574  	}
  7575  	return ret, nil
  7576  }
  7577  
  7578  type ProjectsLocationsAddressGroupsTestIamPermissionsCall struct {
  7579  	s                                    *Service
  7580  	resource                             string
  7581  	googleiamv1testiampermissionsrequest *GoogleIamV1TestIamPermissionsRequest
  7582  	urlParams_                           gensupport.URLParams
  7583  	ctx_                                 context.Context
  7584  	header_                              http.Header
  7585  }
  7586  
  7587  // TestIamPermissions: Returns permissions that a caller has on the specified
  7588  // resource. If the resource does not exist, this will return an empty set of
  7589  // permissions, not a `NOT_FOUND` error. Note: This operation is designed to be
  7590  // used for building permission-aware UIs and command-line tools, not for
  7591  // authorization checking. This operation may "fail open" without warning.
  7592  //
  7593  //   - resource: REQUIRED: The resource for which the policy detail is being
  7594  //     requested. See Resource names
  7595  //     (https://cloud.google.com/apis/design/resource_names) for the appropriate
  7596  //     value for this field.
  7597  func (r *ProjectsLocationsAddressGroupsService) TestIamPermissions(resource string, googleiamv1testiampermissionsrequest *GoogleIamV1TestIamPermissionsRequest) *ProjectsLocationsAddressGroupsTestIamPermissionsCall {
  7598  	c := &ProjectsLocationsAddressGroupsTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7599  	c.resource = resource
  7600  	c.googleiamv1testiampermissionsrequest = googleiamv1testiampermissionsrequest
  7601  	return c
  7602  }
  7603  
  7604  // Fields allows partial responses to be retrieved. See
  7605  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7606  // details.
  7607  func (c *ProjectsLocationsAddressGroupsTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsLocationsAddressGroupsTestIamPermissionsCall {
  7608  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7609  	return c
  7610  }
  7611  
  7612  // Context sets the context to be used in this call's Do method.
  7613  func (c *ProjectsLocationsAddressGroupsTestIamPermissionsCall) Context(ctx context.Context) *ProjectsLocationsAddressGroupsTestIamPermissionsCall {
  7614  	c.ctx_ = ctx
  7615  	return c
  7616  }
  7617  
  7618  // Header returns a http.Header that can be modified by the caller to add
  7619  // headers to the request.
  7620  func (c *ProjectsLocationsAddressGroupsTestIamPermissionsCall) Header() http.Header {
  7621  	if c.header_ == nil {
  7622  		c.header_ = make(http.Header)
  7623  	}
  7624  	return c.header_
  7625  }
  7626  
  7627  func (c *ProjectsLocationsAddressGroupsTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) {
  7628  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  7629  	var body io.Reader = nil
  7630  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleiamv1testiampermissionsrequest)
  7631  	if err != nil {
  7632  		return nil, err
  7633  	}
  7634  	c.urlParams_.Set("alt", alt)
  7635  	c.urlParams_.Set("prettyPrint", "false")
  7636  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:testIamPermissions")
  7637  	urls += "?" + c.urlParams_.Encode()
  7638  	req, err := http.NewRequest("POST", urls, body)
  7639  	if err != nil {
  7640  		return nil, err
  7641  	}
  7642  	req.Header = reqHeaders
  7643  	googleapi.Expand(req.URL, map[string]string{
  7644  		"resource": c.resource,
  7645  	})
  7646  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7647  }
  7648  
  7649  // Do executes the "networksecurity.projects.locations.addressGroups.testIamPermissions" call.
  7650  // Any non-2xx status code is an error. Response headers are in either
  7651  // *GoogleIamV1TestIamPermissionsResponse.ServerResponse.Header or (if a
  7652  // response was returned at all) in error.(*googleapi.Error).Header. Use
  7653  // googleapi.IsNotModified to check whether the returned error was because
  7654  // http.StatusNotModified was returned.
  7655  func (c *ProjectsLocationsAddressGroupsTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1TestIamPermissionsResponse, error) {
  7656  	gensupport.SetOptions(c.urlParams_, opts...)
  7657  	res, err := c.doRequest("json")
  7658  	if res != nil && res.StatusCode == http.StatusNotModified {
  7659  		if res.Body != nil {
  7660  			res.Body.Close()
  7661  		}
  7662  		return nil, gensupport.WrapError(&googleapi.Error{
  7663  			Code:   res.StatusCode,
  7664  			Header: res.Header,
  7665  		})
  7666  	}
  7667  	if err != nil {
  7668  		return nil, err
  7669  	}
  7670  	defer googleapi.CloseBody(res)
  7671  	if err := googleapi.CheckResponse(res); err != nil {
  7672  		return nil, gensupport.WrapError(err)
  7673  	}
  7674  	ret := &GoogleIamV1TestIamPermissionsResponse{
  7675  		ServerResponse: googleapi.ServerResponse{
  7676  			Header:         res.Header,
  7677  			HTTPStatusCode: res.StatusCode,
  7678  		},
  7679  	}
  7680  	target := &ret
  7681  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7682  		return nil, err
  7683  	}
  7684  	return ret, nil
  7685  }
  7686  
  7687  type ProjectsLocationsAuthorizationPoliciesCreateCall struct {
  7688  	s                   *Service
  7689  	parent              string
  7690  	authorizationpolicy *AuthorizationPolicy
  7691  	urlParams_          gensupport.URLParams
  7692  	ctx_                context.Context
  7693  	header_             http.Header
  7694  }
  7695  
  7696  // Create: Creates a new AuthorizationPolicy in a given project and location.
  7697  //
  7698  //   - parent: The parent resource of the AuthorizationPolicy. Must be in the
  7699  //     format `projects/{project}/locations/{location}`.
  7700  func (r *ProjectsLocationsAuthorizationPoliciesService) Create(parent string, authorizationpolicy *AuthorizationPolicy) *ProjectsLocationsAuthorizationPoliciesCreateCall {
  7701  	c := &ProjectsLocationsAuthorizationPoliciesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7702  	c.parent = parent
  7703  	c.authorizationpolicy = authorizationpolicy
  7704  	return c
  7705  }
  7706  
  7707  // AuthorizationPolicyId sets the optional parameter "authorizationPolicyId":
  7708  // Required. Short name of the AuthorizationPolicy resource to be created. This
  7709  // value should be 1-63 characters long, containing only letters, numbers,
  7710  // hyphens, and underscores, and should not start with a number. E.g.
  7711  // "authz_policy".
  7712  func (c *ProjectsLocationsAuthorizationPoliciesCreateCall) AuthorizationPolicyId(authorizationPolicyId string) *ProjectsLocationsAuthorizationPoliciesCreateCall {
  7713  	c.urlParams_.Set("authorizationPolicyId", authorizationPolicyId)
  7714  	return c
  7715  }
  7716  
  7717  // Fields allows partial responses to be retrieved. See
  7718  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7719  // details.
  7720  func (c *ProjectsLocationsAuthorizationPoliciesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAuthorizationPoliciesCreateCall {
  7721  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7722  	return c
  7723  }
  7724  
  7725  // Context sets the context to be used in this call's Do method.
  7726  func (c *ProjectsLocationsAuthorizationPoliciesCreateCall) Context(ctx context.Context) *ProjectsLocationsAuthorizationPoliciesCreateCall {
  7727  	c.ctx_ = ctx
  7728  	return c
  7729  }
  7730  
  7731  // Header returns a http.Header that can be modified by the caller to add
  7732  // headers to the request.
  7733  func (c *ProjectsLocationsAuthorizationPoliciesCreateCall) Header() http.Header {
  7734  	if c.header_ == nil {
  7735  		c.header_ = make(http.Header)
  7736  	}
  7737  	return c.header_
  7738  }
  7739  
  7740  func (c *ProjectsLocationsAuthorizationPoliciesCreateCall) doRequest(alt string) (*http.Response, error) {
  7741  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  7742  	var body io.Reader = nil
  7743  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.authorizationpolicy)
  7744  	if err != nil {
  7745  		return nil, err
  7746  	}
  7747  	c.urlParams_.Set("alt", alt)
  7748  	c.urlParams_.Set("prettyPrint", "false")
  7749  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/authorizationPolicies")
  7750  	urls += "?" + c.urlParams_.Encode()
  7751  	req, err := http.NewRequest("POST", urls, body)
  7752  	if err != nil {
  7753  		return nil, err
  7754  	}
  7755  	req.Header = reqHeaders
  7756  	googleapi.Expand(req.URL, map[string]string{
  7757  		"parent": c.parent,
  7758  	})
  7759  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7760  }
  7761  
  7762  // Do executes the "networksecurity.projects.locations.authorizationPolicies.create" call.
  7763  // Any non-2xx status code is an error. Response headers are in either
  7764  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  7765  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  7766  // whether the returned error was because http.StatusNotModified was returned.
  7767  func (c *ProjectsLocationsAuthorizationPoliciesCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  7768  	gensupport.SetOptions(c.urlParams_, opts...)
  7769  	res, err := c.doRequest("json")
  7770  	if res != nil && res.StatusCode == http.StatusNotModified {
  7771  		if res.Body != nil {
  7772  			res.Body.Close()
  7773  		}
  7774  		return nil, gensupport.WrapError(&googleapi.Error{
  7775  			Code:   res.StatusCode,
  7776  			Header: res.Header,
  7777  		})
  7778  	}
  7779  	if err != nil {
  7780  		return nil, err
  7781  	}
  7782  	defer googleapi.CloseBody(res)
  7783  	if err := googleapi.CheckResponse(res); err != nil {
  7784  		return nil, gensupport.WrapError(err)
  7785  	}
  7786  	ret := &Operation{
  7787  		ServerResponse: googleapi.ServerResponse{
  7788  			Header:         res.Header,
  7789  			HTTPStatusCode: res.StatusCode,
  7790  		},
  7791  	}
  7792  	target := &ret
  7793  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7794  		return nil, err
  7795  	}
  7796  	return ret, nil
  7797  }
  7798  
  7799  type ProjectsLocationsAuthorizationPoliciesDeleteCall struct {
  7800  	s          *Service
  7801  	name       string
  7802  	urlParams_ gensupport.URLParams
  7803  	ctx_       context.Context
  7804  	header_    http.Header
  7805  }
  7806  
  7807  // Delete: Deletes a single AuthorizationPolicy.
  7808  //
  7809  //   - name: A name of the AuthorizationPolicy to delete. Must be in the format
  7810  //     `projects/{project}/locations/{location}/authorizationPolicies/*`.
  7811  func (r *ProjectsLocationsAuthorizationPoliciesService) Delete(name string) *ProjectsLocationsAuthorizationPoliciesDeleteCall {
  7812  	c := &ProjectsLocationsAuthorizationPoliciesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7813  	c.name = name
  7814  	return c
  7815  }
  7816  
  7817  // Fields allows partial responses to be retrieved. See
  7818  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7819  // details.
  7820  func (c *ProjectsLocationsAuthorizationPoliciesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAuthorizationPoliciesDeleteCall {
  7821  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7822  	return c
  7823  }
  7824  
  7825  // Context sets the context to be used in this call's Do method.
  7826  func (c *ProjectsLocationsAuthorizationPoliciesDeleteCall) Context(ctx context.Context) *ProjectsLocationsAuthorizationPoliciesDeleteCall {
  7827  	c.ctx_ = ctx
  7828  	return c
  7829  }
  7830  
  7831  // Header returns a http.Header that can be modified by the caller to add
  7832  // headers to the request.
  7833  func (c *ProjectsLocationsAuthorizationPoliciesDeleteCall) Header() http.Header {
  7834  	if c.header_ == nil {
  7835  		c.header_ = make(http.Header)
  7836  	}
  7837  	return c.header_
  7838  }
  7839  
  7840  func (c *ProjectsLocationsAuthorizationPoliciesDeleteCall) doRequest(alt string) (*http.Response, error) {
  7841  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  7842  	var body io.Reader = nil
  7843  	c.urlParams_.Set("alt", alt)
  7844  	c.urlParams_.Set("prettyPrint", "false")
  7845  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  7846  	urls += "?" + c.urlParams_.Encode()
  7847  	req, err := http.NewRequest("DELETE", urls, body)
  7848  	if err != nil {
  7849  		return nil, err
  7850  	}
  7851  	req.Header = reqHeaders
  7852  	googleapi.Expand(req.URL, map[string]string{
  7853  		"name": c.name,
  7854  	})
  7855  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7856  }
  7857  
  7858  // Do executes the "networksecurity.projects.locations.authorizationPolicies.delete" call.
  7859  // Any non-2xx status code is an error. Response headers are in either
  7860  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  7861  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  7862  // whether the returned error was because http.StatusNotModified was returned.
  7863  func (c *ProjectsLocationsAuthorizationPoliciesDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  7864  	gensupport.SetOptions(c.urlParams_, opts...)
  7865  	res, err := c.doRequest("json")
  7866  	if res != nil && res.StatusCode == http.StatusNotModified {
  7867  		if res.Body != nil {
  7868  			res.Body.Close()
  7869  		}
  7870  		return nil, gensupport.WrapError(&googleapi.Error{
  7871  			Code:   res.StatusCode,
  7872  			Header: res.Header,
  7873  		})
  7874  	}
  7875  	if err != nil {
  7876  		return nil, err
  7877  	}
  7878  	defer googleapi.CloseBody(res)
  7879  	if err := googleapi.CheckResponse(res); err != nil {
  7880  		return nil, gensupport.WrapError(err)
  7881  	}
  7882  	ret := &Operation{
  7883  		ServerResponse: googleapi.ServerResponse{
  7884  			Header:         res.Header,
  7885  			HTTPStatusCode: res.StatusCode,
  7886  		},
  7887  	}
  7888  	target := &ret
  7889  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7890  		return nil, err
  7891  	}
  7892  	return ret, nil
  7893  }
  7894  
  7895  type ProjectsLocationsAuthorizationPoliciesGetCall struct {
  7896  	s            *Service
  7897  	name         string
  7898  	urlParams_   gensupport.URLParams
  7899  	ifNoneMatch_ string
  7900  	ctx_         context.Context
  7901  	header_      http.Header
  7902  }
  7903  
  7904  // Get: Gets details of a single AuthorizationPolicy.
  7905  //
  7906  //   - name: A name of the AuthorizationPolicy to get. Must be in the format
  7907  //     `projects/{project}/locations/{location}/authorizationPolicies/*`.
  7908  func (r *ProjectsLocationsAuthorizationPoliciesService) Get(name string) *ProjectsLocationsAuthorizationPoliciesGetCall {
  7909  	c := &ProjectsLocationsAuthorizationPoliciesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7910  	c.name = name
  7911  	return c
  7912  }
  7913  
  7914  // Fields allows partial responses to be retrieved. See
  7915  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7916  // details.
  7917  func (c *ProjectsLocationsAuthorizationPoliciesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAuthorizationPoliciesGetCall {
  7918  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7919  	return c
  7920  }
  7921  
  7922  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  7923  // object's ETag matches the given value. This is useful for getting updates
  7924  // only after the object has changed since the last request.
  7925  func (c *ProjectsLocationsAuthorizationPoliciesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAuthorizationPoliciesGetCall {
  7926  	c.ifNoneMatch_ = entityTag
  7927  	return c
  7928  }
  7929  
  7930  // Context sets the context to be used in this call's Do method.
  7931  func (c *ProjectsLocationsAuthorizationPoliciesGetCall) Context(ctx context.Context) *ProjectsLocationsAuthorizationPoliciesGetCall {
  7932  	c.ctx_ = ctx
  7933  	return c
  7934  }
  7935  
  7936  // Header returns a http.Header that can be modified by the caller to add
  7937  // headers to the request.
  7938  func (c *ProjectsLocationsAuthorizationPoliciesGetCall) Header() http.Header {
  7939  	if c.header_ == nil {
  7940  		c.header_ = make(http.Header)
  7941  	}
  7942  	return c.header_
  7943  }
  7944  
  7945  func (c *ProjectsLocationsAuthorizationPoliciesGetCall) doRequest(alt string) (*http.Response, error) {
  7946  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  7947  	if c.ifNoneMatch_ != "" {
  7948  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  7949  	}
  7950  	var body io.Reader = nil
  7951  	c.urlParams_.Set("alt", alt)
  7952  	c.urlParams_.Set("prettyPrint", "false")
  7953  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  7954  	urls += "?" + c.urlParams_.Encode()
  7955  	req, err := http.NewRequest("GET", urls, body)
  7956  	if err != nil {
  7957  		return nil, err
  7958  	}
  7959  	req.Header = reqHeaders
  7960  	googleapi.Expand(req.URL, map[string]string{
  7961  		"name": c.name,
  7962  	})
  7963  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7964  }
  7965  
  7966  // Do executes the "networksecurity.projects.locations.authorizationPolicies.get" call.
  7967  // Any non-2xx status code is an error. Response headers are in either
  7968  // *AuthorizationPolicy.ServerResponse.Header or (if a response was returned at
  7969  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  7970  // check whether the returned error was because http.StatusNotModified was
  7971  // returned.
  7972  func (c *ProjectsLocationsAuthorizationPoliciesGetCall) Do(opts ...googleapi.CallOption) (*AuthorizationPolicy, error) {
  7973  	gensupport.SetOptions(c.urlParams_, opts...)
  7974  	res, err := c.doRequest("json")
  7975  	if res != nil && res.StatusCode == http.StatusNotModified {
  7976  		if res.Body != nil {
  7977  			res.Body.Close()
  7978  		}
  7979  		return nil, gensupport.WrapError(&googleapi.Error{
  7980  			Code:   res.StatusCode,
  7981  			Header: res.Header,
  7982  		})
  7983  	}
  7984  	if err != nil {
  7985  		return nil, err
  7986  	}
  7987  	defer googleapi.CloseBody(res)
  7988  	if err := googleapi.CheckResponse(res); err != nil {
  7989  		return nil, gensupport.WrapError(err)
  7990  	}
  7991  	ret := &AuthorizationPolicy{
  7992  		ServerResponse: googleapi.ServerResponse{
  7993  			Header:         res.Header,
  7994  			HTTPStatusCode: res.StatusCode,
  7995  		},
  7996  	}
  7997  	target := &ret
  7998  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7999  		return nil, err
  8000  	}
  8001  	return ret, nil
  8002  }
  8003  
  8004  type ProjectsLocationsAuthorizationPoliciesGetIamPolicyCall struct {
  8005  	s            *Service
  8006  	resource     string
  8007  	urlParams_   gensupport.URLParams
  8008  	ifNoneMatch_ string
  8009  	ctx_         context.Context
  8010  	header_      http.Header
  8011  }
  8012  
  8013  // GetIamPolicy: Gets the access control policy for a resource. Returns an
  8014  // empty policy if the resource exists and does not have a policy set.
  8015  //
  8016  //   - resource: REQUIRED: The resource for which the policy is being requested.
  8017  //     See Resource names (https://cloud.google.com/apis/design/resource_names)
  8018  //     for the appropriate value for this field.
  8019  func (r *ProjectsLocationsAuthorizationPoliciesService) GetIamPolicy(resource string) *ProjectsLocationsAuthorizationPoliciesGetIamPolicyCall {
  8020  	c := &ProjectsLocationsAuthorizationPoliciesGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8021  	c.resource = resource
  8022  	return c
  8023  }
  8024  
  8025  // OptionsRequestedPolicyVersion sets the optional parameter
  8026  // "options.requestedPolicyVersion": The maximum policy version that will be
  8027  // used to format the policy. Valid values are 0, 1, and 3. Requests specifying
  8028  // an invalid value will be rejected. Requests for policies with any
  8029  // conditional role bindings must specify version 3. Policies with no
  8030  // conditional role bindings may specify any valid value or leave the field
  8031  // unset. The policy in the response might use the policy version that you
  8032  // specified, or it might use a lower policy version. For example, if you
  8033  // specify version 3, but the policy has no conditional role bindings, the
  8034  // response uses version 1. To learn which resources support conditions in
  8035  // their IAM policies, see the IAM documentation
  8036  // (https://cloud.google.com/iam/help/conditions/resource-policies).
  8037  func (c *ProjectsLocationsAuthorizationPoliciesGetIamPolicyCall) OptionsRequestedPolicyVersion(optionsRequestedPolicyVersion int64) *ProjectsLocationsAuthorizationPoliciesGetIamPolicyCall {
  8038  	c.urlParams_.Set("options.requestedPolicyVersion", fmt.Sprint(optionsRequestedPolicyVersion))
  8039  	return c
  8040  }
  8041  
  8042  // Fields allows partial responses to be retrieved. See
  8043  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8044  // details.
  8045  func (c *ProjectsLocationsAuthorizationPoliciesGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsAuthorizationPoliciesGetIamPolicyCall {
  8046  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8047  	return c
  8048  }
  8049  
  8050  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  8051  // object's ETag matches the given value. This is useful for getting updates
  8052  // only after the object has changed since the last request.
  8053  func (c *ProjectsLocationsAuthorizationPoliciesGetIamPolicyCall) IfNoneMatch(entityTag string) *ProjectsLocationsAuthorizationPoliciesGetIamPolicyCall {
  8054  	c.ifNoneMatch_ = entityTag
  8055  	return c
  8056  }
  8057  
  8058  // Context sets the context to be used in this call's Do method.
  8059  func (c *ProjectsLocationsAuthorizationPoliciesGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsAuthorizationPoliciesGetIamPolicyCall {
  8060  	c.ctx_ = ctx
  8061  	return c
  8062  }
  8063  
  8064  // Header returns a http.Header that can be modified by the caller to add
  8065  // headers to the request.
  8066  func (c *ProjectsLocationsAuthorizationPoliciesGetIamPolicyCall) Header() http.Header {
  8067  	if c.header_ == nil {
  8068  		c.header_ = make(http.Header)
  8069  	}
  8070  	return c.header_
  8071  }
  8072  
  8073  func (c *ProjectsLocationsAuthorizationPoliciesGetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
  8074  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  8075  	if c.ifNoneMatch_ != "" {
  8076  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  8077  	}
  8078  	var body io.Reader = nil
  8079  	c.urlParams_.Set("alt", alt)
  8080  	c.urlParams_.Set("prettyPrint", "false")
  8081  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:getIamPolicy")
  8082  	urls += "?" + c.urlParams_.Encode()
  8083  	req, err := http.NewRequest("GET", urls, body)
  8084  	if err != nil {
  8085  		return nil, err
  8086  	}
  8087  	req.Header = reqHeaders
  8088  	googleapi.Expand(req.URL, map[string]string{
  8089  		"resource": c.resource,
  8090  	})
  8091  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8092  }
  8093  
  8094  // Do executes the "networksecurity.projects.locations.authorizationPolicies.getIamPolicy" call.
  8095  // Any non-2xx status code is an error. Response headers are in either
  8096  // *GoogleIamV1Policy.ServerResponse.Header or (if a response was returned at
  8097  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  8098  // check whether the returned error was because http.StatusNotModified was
  8099  // returned.
  8100  func (c *ProjectsLocationsAuthorizationPoliciesGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1Policy, error) {
  8101  	gensupport.SetOptions(c.urlParams_, opts...)
  8102  	res, err := c.doRequest("json")
  8103  	if res != nil && res.StatusCode == http.StatusNotModified {
  8104  		if res.Body != nil {
  8105  			res.Body.Close()
  8106  		}
  8107  		return nil, gensupport.WrapError(&googleapi.Error{
  8108  			Code:   res.StatusCode,
  8109  			Header: res.Header,
  8110  		})
  8111  	}
  8112  	if err != nil {
  8113  		return nil, err
  8114  	}
  8115  	defer googleapi.CloseBody(res)
  8116  	if err := googleapi.CheckResponse(res); err != nil {
  8117  		return nil, gensupport.WrapError(err)
  8118  	}
  8119  	ret := &GoogleIamV1Policy{
  8120  		ServerResponse: googleapi.ServerResponse{
  8121  			Header:         res.Header,
  8122  			HTTPStatusCode: res.StatusCode,
  8123  		},
  8124  	}
  8125  	target := &ret
  8126  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8127  		return nil, err
  8128  	}
  8129  	return ret, nil
  8130  }
  8131  
  8132  type ProjectsLocationsAuthorizationPoliciesListCall struct {
  8133  	s            *Service
  8134  	parent       string
  8135  	urlParams_   gensupport.URLParams
  8136  	ifNoneMatch_ string
  8137  	ctx_         context.Context
  8138  	header_      http.Header
  8139  }
  8140  
  8141  // List: Lists AuthorizationPolicies in a given project and location.
  8142  //
  8143  //   - parent: The project and location from which the AuthorizationPolicies
  8144  //     should be listed, specified in the format
  8145  //     `projects/{project}/locations/{location}`.
  8146  func (r *ProjectsLocationsAuthorizationPoliciesService) List(parent string) *ProjectsLocationsAuthorizationPoliciesListCall {
  8147  	c := &ProjectsLocationsAuthorizationPoliciesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8148  	c.parent = parent
  8149  	return c
  8150  }
  8151  
  8152  // PageSize sets the optional parameter "pageSize": Maximum number of
  8153  // AuthorizationPolicies to return per call.
  8154  func (c *ProjectsLocationsAuthorizationPoliciesListCall) PageSize(pageSize int64) *ProjectsLocationsAuthorizationPoliciesListCall {
  8155  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  8156  	return c
  8157  }
  8158  
  8159  // PageToken sets the optional parameter "pageToken": The value returned by the
  8160  // last `ListAuthorizationPoliciesResponse` Indicates that this is a
  8161  // continuation of a prior `ListAuthorizationPolicies` call, and that the
  8162  // system should return the next page of data.
  8163  func (c *ProjectsLocationsAuthorizationPoliciesListCall) PageToken(pageToken string) *ProjectsLocationsAuthorizationPoliciesListCall {
  8164  	c.urlParams_.Set("pageToken", pageToken)
  8165  	return c
  8166  }
  8167  
  8168  // Fields allows partial responses to be retrieved. See
  8169  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8170  // details.
  8171  func (c *ProjectsLocationsAuthorizationPoliciesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAuthorizationPoliciesListCall {
  8172  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8173  	return c
  8174  }
  8175  
  8176  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  8177  // object's ETag matches the given value. This is useful for getting updates
  8178  // only after the object has changed since the last request.
  8179  func (c *ProjectsLocationsAuthorizationPoliciesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAuthorizationPoliciesListCall {
  8180  	c.ifNoneMatch_ = entityTag
  8181  	return c
  8182  }
  8183  
  8184  // Context sets the context to be used in this call's Do method.
  8185  func (c *ProjectsLocationsAuthorizationPoliciesListCall) Context(ctx context.Context) *ProjectsLocationsAuthorizationPoliciesListCall {
  8186  	c.ctx_ = ctx
  8187  	return c
  8188  }
  8189  
  8190  // Header returns a http.Header that can be modified by the caller to add
  8191  // headers to the request.
  8192  func (c *ProjectsLocationsAuthorizationPoliciesListCall) Header() http.Header {
  8193  	if c.header_ == nil {
  8194  		c.header_ = make(http.Header)
  8195  	}
  8196  	return c.header_
  8197  }
  8198  
  8199  func (c *ProjectsLocationsAuthorizationPoliciesListCall) doRequest(alt string) (*http.Response, error) {
  8200  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  8201  	if c.ifNoneMatch_ != "" {
  8202  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  8203  	}
  8204  	var body io.Reader = nil
  8205  	c.urlParams_.Set("alt", alt)
  8206  	c.urlParams_.Set("prettyPrint", "false")
  8207  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/authorizationPolicies")
  8208  	urls += "?" + c.urlParams_.Encode()
  8209  	req, err := http.NewRequest("GET", urls, body)
  8210  	if err != nil {
  8211  		return nil, err
  8212  	}
  8213  	req.Header = reqHeaders
  8214  	googleapi.Expand(req.URL, map[string]string{
  8215  		"parent": c.parent,
  8216  	})
  8217  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8218  }
  8219  
  8220  // Do executes the "networksecurity.projects.locations.authorizationPolicies.list" call.
  8221  // Any non-2xx status code is an error. Response headers are in either
  8222  // *ListAuthorizationPoliciesResponse.ServerResponse.Header or (if a response
  8223  // was returned at all) in error.(*googleapi.Error).Header. Use
  8224  // googleapi.IsNotModified to check whether the returned error was because
  8225  // http.StatusNotModified was returned.
  8226  func (c *ProjectsLocationsAuthorizationPoliciesListCall) Do(opts ...googleapi.CallOption) (*ListAuthorizationPoliciesResponse, error) {
  8227  	gensupport.SetOptions(c.urlParams_, opts...)
  8228  	res, err := c.doRequest("json")
  8229  	if res != nil && res.StatusCode == http.StatusNotModified {
  8230  		if res.Body != nil {
  8231  			res.Body.Close()
  8232  		}
  8233  		return nil, gensupport.WrapError(&googleapi.Error{
  8234  			Code:   res.StatusCode,
  8235  			Header: res.Header,
  8236  		})
  8237  	}
  8238  	if err != nil {
  8239  		return nil, err
  8240  	}
  8241  	defer googleapi.CloseBody(res)
  8242  	if err := googleapi.CheckResponse(res); err != nil {
  8243  		return nil, gensupport.WrapError(err)
  8244  	}
  8245  	ret := &ListAuthorizationPoliciesResponse{
  8246  		ServerResponse: googleapi.ServerResponse{
  8247  			Header:         res.Header,
  8248  			HTTPStatusCode: res.StatusCode,
  8249  		},
  8250  	}
  8251  	target := &ret
  8252  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8253  		return nil, err
  8254  	}
  8255  	return ret, nil
  8256  }
  8257  
  8258  // Pages invokes f for each page of results.
  8259  // A non-nil error returned from f will halt the iteration.
  8260  // The provided context supersedes any context provided to the Context method.
  8261  func (c *ProjectsLocationsAuthorizationPoliciesListCall) Pages(ctx context.Context, f func(*ListAuthorizationPoliciesResponse) error) error {
  8262  	c.ctx_ = ctx
  8263  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  8264  	for {
  8265  		x, err := c.Do()
  8266  		if err != nil {
  8267  			return err
  8268  		}
  8269  		if err := f(x); err != nil {
  8270  			return err
  8271  		}
  8272  		if x.NextPageToken == "" {
  8273  			return nil
  8274  		}
  8275  		c.PageToken(x.NextPageToken)
  8276  	}
  8277  }
  8278  
  8279  type ProjectsLocationsAuthorizationPoliciesPatchCall struct {
  8280  	s                   *Service
  8281  	name                string
  8282  	authorizationpolicy *AuthorizationPolicy
  8283  	urlParams_          gensupport.URLParams
  8284  	ctx_                context.Context
  8285  	header_             http.Header
  8286  }
  8287  
  8288  // Patch: Updates the parameters of a single AuthorizationPolicy.
  8289  //
  8290  //   - name: Name of the AuthorizationPolicy resource. It matches pattern
  8291  //     `projects/{project}/locations/{location}/authorizationPolicies/`.
  8292  func (r *ProjectsLocationsAuthorizationPoliciesService) Patch(name string, authorizationpolicy *AuthorizationPolicy) *ProjectsLocationsAuthorizationPoliciesPatchCall {
  8293  	c := &ProjectsLocationsAuthorizationPoliciesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8294  	c.name = name
  8295  	c.authorizationpolicy = authorizationpolicy
  8296  	return c
  8297  }
  8298  
  8299  // UpdateMask sets the optional parameter "updateMask": Field mask is used to
  8300  // specify the fields to be overwritten in the AuthorizationPolicy resource by
  8301  // the update. The fields specified in the update_mask are relative to the
  8302  // resource, not the full request. A field will be overwritten if it is in the
  8303  // mask. If the user does not provide a mask then all fields will be
  8304  // overwritten.
  8305  func (c *ProjectsLocationsAuthorizationPoliciesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAuthorizationPoliciesPatchCall {
  8306  	c.urlParams_.Set("updateMask", updateMask)
  8307  	return c
  8308  }
  8309  
  8310  // Fields allows partial responses to be retrieved. See
  8311  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8312  // details.
  8313  func (c *ProjectsLocationsAuthorizationPoliciesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAuthorizationPoliciesPatchCall {
  8314  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8315  	return c
  8316  }
  8317  
  8318  // Context sets the context to be used in this call's Do method.
  8319  func (c *ProjectsLocationsAuthorizationPoliciesPatchCall) Context(ctx context.Context) *ProjectsLocationsAuthorizationPoliciesPatchCall {
  8320  	c.ctx_ = ctx
  8321  	return c
  8322  }
  8323  
  8324  // Header returns a http.Header that can be modified by the caller to add
  8325  // headers to the request.
  8326  func (c *ProjectsLocationsAuthorizationPoliciesPatchCall) Header() http.Header {
  8327  	if c.header_ == nil {
  8328  		c.header_ = make(http.Header)
  8329  	}
  8330  	return c.header_
  8331  }
  8332  
  8333  func (c *ProjectsLocationsAuthorizationPoliciesPatchCall) doRequest(alt string) (*http.Response, error) {
  8334  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  8335  	var body io.Reader = nil
  8336  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.authorizationpolicy)
  8337  	if err != nil {
  8338  		return nil, err
  8339  	}
  8340  	c.urlParams_.Set("alt", alt)
  8341  	c.urlParams_.Set("prettyPrint", "false")
  8342  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  8343  	urls += "?" + c.urlParams_.Encode()
  8344  	req, err := http.NewRequest("PATCH", urls, body)
  8345  	if err != nil {
  8346  		return nil, err
  8347  	}
  8348  	req.Header = reqHeaders
  8349  	googleapi.Expand(req.URL, map[string]string{
  8350  		"name": c.name,
  8351  	})
  8352  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8353  }
  8354  
  8355  // Do executes the "networksecurity.projects.locations.authorizationPolicies.patch" call.
  8356  // Any non-2xx status code is an error. Response headers are in either
  8357  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  8358  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  8359  // whether the returned error was because http.StatusNotModified was returned.
  8360  func (c *ProjectsLocationsAuthorizationPoliciesPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  8361  	gensupport.SetOptions(c.urlParams_, opts...)
  8362  	res, err := c.doRequest("json")
  8363  	if res != nil && res.StatusCode == http.StatusNotModified {
  8364  		if res.Body != nil {
  8365  			res.Body.Close()
  8366  		}
  8367  		return nil, gensupport.WrapError(&googleapi.Error{
  8368  			Code:   res.StatusCode,
  8369  			Header: res.Header,
  8370  		})
  8371  	}
  8372  	if err != nil {
  8373  		return nil, err
  8374  	}
  8375  	defer googleapi.CloseBody(res)
  8376  	if err := googleapi.CheckResponse(res); err != nil {
  8377  		return nil, gensupport.WrapError(err)
  8378  	}
  8379  	ret := &Operation{
  8380  		ServerResponse: googleapi.ServerResponse{
  8381  			Header:         res.Header,
  8382  			HTTPStatusCode: res.StatusCode,
  8383  		},
  8384  	}
  8385  	target := &ret
  8386  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8387  		return nil, err
  8388  	}
  8389  	return ret, nil
  8390  }
  8391  
  8392  type ProjectsLocationsAuthorizationPoliciesSetIamPolicyCall struct {
  8393  	s                              *Service
  8394  	resource                       string
  8395  	googleiamv1setiampolicyrequest *GoogleIamV1SetIamPolicyRequest
  8396  	urlParams_                     gensupport.URLParams
  8397  	ctx_                           context.Context
  8398  	header_                        http.Header
  8399  }
  8400  
  8401  // SetIamPolicy: Sets the access control policy on the specified resource.
  8402  // Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`,
  8403  // and `PERMISSION_DENIED` errors.
  8404  //
  8405  //   - resource: REQUIRED: The resource for which the policy is being specified.
  8406  //     See Resource names (https://cloud.google.com/apis/design/resource_names)
  8407  //     for the appropriate value for this field.
  8408  func (r *ProjectsLocationsAuthorizationPoliciesService) SetIamPolicy(resource string, googleiamv1setiampolicyrequest *GoogleIamV1SetIamPolicyRequest) *ProjectsLocationsAuthorizationPoliciesSetIamPolicyCall {
  8409  	c := &ProjectsLocationsAuthorizationPoliciesSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8410  	c.resource = resource
  8411  	c.googleiamv1setiampolicyrequest = googleiamv1setiampolicyrequest
  8412  	return c
  8413  }
  8414  
  8415  // Fields allows partial responses to be retrieved. See
  8416  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8417  // details.
  8418  func (c *ProjectsLocationsAuthorizationPoliciesSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsAuthorizationPoliciesSetIamPolicyCall {
  8419  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8420  	return c
  8421  }
  8422  
  8423  // Context sets the context to be used in this call's Do method.
  8424  func (c *ProjectsLocationsAuthorizationPoliciesSetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsAuthorizationPoliciesSetIamPolicyCall {
  8425  	c.ctx_ = ctx
  8426  	return c
  8427  }
  8428  
  8429  // Header returns a http.Header that can be modified by the caller to add
  8430  // headers to the request.
  8431  func (c *ProjectsLocationsAuthorizationPoliciesSetIamPolicyCall) Header() http.Header {
  8432  	if c.header_ == nil {
  8433  		c.header_ = make(http.Header)
  8434  	}
  8435  	return c.header_
  8436  }
  8437  
  8438  func (c *ProjectsLocationsAuthorizationPoliciesSetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
  8439  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  8440  	var body io.Reader = nil
  8441  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleiamv1setiampolicyrequest)
  8442  	if err != nil {
  8443  		return nil, err
  8444  	}
  8445  	c.urlParams_.Set("alt", alt)
  8446  	c.urlParams_.Set("prettyPrint", "false")
  8447  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:setIamPolicy")
  8448  	urls += "?" + c.urlParams_.Encode()
  8449  	req, err := http.NewRequest("POST", urls, body)
  8450  	if err != nil {
  8451  		return nil, err
  8452  	}
  8453  	req.Header = reqHeaders
  8454  	googleapi.Expand(req.URL, map[string]string{
  8455  		"resource": c.resource,
  8456  	})
  8457  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8458  }
  8459  
  8460  // Do executes the "networksecurity.projects.locations.authorizationPolicies.setIamPolicy" call.
  8461  // Any non-2xx status code is an error. Response headers are in either
  8462  // *GoogleIamV1Policy.ServerResponse.Header or (if a response was returned at
  8463  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  8464  // check whether the returned error was because http.StatusNotModified was
  8465  // returned.
  8466  func (c *ProjectsLocationsAuthorizationPoliciesSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1Policy, error) {
  8467  	gensupport.SetOptions(c.urlParams_, opts...)
  8468  	res, err := c.doRequest("json")
  8469  	if res != nil && res.StatusCode == http.StatusNotModified {
  8470  		if res.Body != nil {
  8471  			res.Body.Close()
  8472  		}
  8473  		return nil, gensupport.WrapError(&googleapi.Error{
  8474  			Code:   res.StatusCode,
  8475  			Header: res.Header,
  8476  		})
  8477  	}
  8478  	if err != nil {
  8479  		return nil, err
  8480  	}
  8481  	defer googleapi.CloseBody(res)
  8482  	if err := googleapi.CheckResponse(res); err != nil {
  8483  		return nil, gensupport.WrapError(err)
  8484  	}
  8485  	ret := &GoogleIamV1Policy{
  8486  		ServerResponse: googleapi.ServerResponse{
  8487  			Header:         res.Header,
  8488  			HTTPStatusCode: res.StatusCode,
  8489  		},
  8490  	}
  8491  	target := &ret
  8492  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8493  		return nil, err
  8494  	}
  8495  	return ret, nil
  8496  }
  8497  
  8498  type ProjectsLocationsAuthorizationPoliciesTestIamPermissionsCall struct {
  8499  	s                                    *Service
  8500  	resource                             string
  8501  	googleiamv1testiampermissionsrequest *GoogleIamV1TestIamPermissionsRequest
  8502  	urlParams_                           gensupport.URLParams
  8503  	ctx_                                 context.Context
  8504  	header_                              http.Header
  8505  }
  8506  
  8507  // TestIamPermissions: Returns permissions that a caller has on the specified
  8508  // resource. If the resource does not exist, this will return an empty set of
  8509  // permissions, not a `NOT_FOUND` error. Note: This operation is designed to be
  8510  // used for building permission-aware UIs and command-line tools, not for
  8511  // authorization checking. This operation may "fail open" without warning.
  8512  //
  8513  //   - resource: REQUIRED: The resource for which the policy detail is being
  8514  //     requested. See Resource names
  8515  //     (https://cloud.google.com/apis/design/resource_names) for the appropriate
  8516  //     value for this field.
  8517  func (r *ProjectsLocationsAuthorizationPoliciesService) TestIamPermissions(resource string, googleiamv1testiampermissionsrequest *GoogleIamV1TestIamPermissionsRequest) *ProjectsLocationsAuthorizationPoliciesTestIamPermissionsCall {
  8518  	c := &ProjectsLocationsAuthorizationPoliciesTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8519  	c.resource = resource
  8520  	c.googleiamv1testiampermissionsrequest = googleiamv1testiampermissionsrequest
  8521  	return c
  8522  }
  8523  
  8524  // Fields allows partial responses to be retrieved. See
  8525  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8526  // details.
  8527  func (c *ProjectsLocationsAuthorizationPoliciesTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsLocationsAuthorizationPoliciesTestIamPermissionsCall {
  8528  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8529  	return c
  8530  }
  8531  
  8532  // Context sets the context to be used in this call's Do method.
  8533  func (c *ProjectsLocationsAuthorizationPoliciesTestIamPermissionsCall) Context(ctx context.Context) *ProjectsLocationsAuthorizationPoliciesTestIamPermissionsCall {
  8534  	c.ctx_ = ctx
  8535  	return c
  8536  }
  8537  
  8538  // Header returns a http.Header that can be modified by the caller to add
  8539  // headers to the request.
  8540  func (c *ProjectsLocationsAuthorizationPoliciesTestIamPermissionsCall) Header() http.Header {
  8541  	if c.header_ == nil {
  8542  		c.header_ = make(http.Header)
  8543  	}
  8544  	return c.header_
  8545  }
  8546  
  8547  func (c *ProjectsLocationsAuthorizationPoliciesTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) {
  8548  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  8549  	var body io.Reader = nil
  8550  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleiamv1testiampermissionsrequest)
  8551  	if err != nil {
  8552  		return nil, err
  8553  	}
  8554  	c.urlParams_.Set("alt", alt)
  8555  	c.urlParams_.Set("prettyPrint", "false")
  8556  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:testIamPermissions")
  8557  	urls += "?" + c.urlParams_.Encode()
  8558  	req, err := http.NewRequest("POST", urls, body)
  8559  	if err != nil {
  8560  		return nil, err
  8561  	}
  8562  	req.Header = reqHeaders
  8563  	googleapi.Expand(req.URL, map[string]string{
  8564  		"resource": c.resource,
  8565  	})
  8566  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8567  }
  8568  
  8569  // Do executes the "networksecurity.projects.locations.authorizationPolicies.testIamPermissions" call.
  8570  // Any non-2xx status code is an error. Response headers are in either
  8571  // *GoogleIamV1TestIamPermissionsResponse.ServerResponse.Header or (if a
  8572  // response was returned at all) in error.(*googleapi.Error).Header. Use
  8573  // googleapi.IsNotModified to check whether the returned error was because
  8574  // http.StatusNotModified was returned.
  8575  func (c *ProjectsLocationsAuthorizationPoliciesTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1TestIamPermissionsResponse, error) {
  8576  	gensupport.SetOptions(c.urlParams_, opts...)
  8577  	res, err := c.doRequest("json")
  8578  	if res != nil && res.StatusCode == http.StatusNotModified {
  8579  		if res.Body != nil {
  8580  			res.Body.Close()
  8581  		}
  8582  		return nil, gensupport.WrapError(&googleapi.Error{
  8583  			Code:   res.StatusCode,
  8584  			Header: res.Header,
  8585  		})
  8586  	}
  8587  	if err != nil {
  8588  		return nil, err
  8589  	}
  8590  	defer googleapi.CloseBody(res)
  8591  	if err := googleapi.CheckResponse(res); err != nil {
  8592  		return nil, gensupport.WrapError(err)
  8593  	}
  8594  	ret := &GoogleIamV1TestIamPermissionsResponse{
  8595  		ServerResponse: googleapi.ServerResponse{
  8596  			Header:         res.Header,
  8597  			HTTPStatusCode: res.StatusCode,
  8598  		},
  8599  	}
  8600  	target := &ret
  8601  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8602  		return nil, err
  8603  	}
  8604  	return ret, nil
  8605  }
  8606  
  8607  type ProjectsLocationsClientTlsPoliciesCreateCall struct {
  8608  	s               *Service
  8609  	parent          string
  8610  	clienttlspolicy *ClientTlsPolicy
  8611  	urlParams_      gensupport.URLParams
  8612  	ctx_            context.Context
  8613  	header_         http.Header
  8614  }
  8615  
  8616  // Create: Creates a new ClientTlsPolicy in a given project and location.
  8617  //
  8618  //   - parent: The parent resource of the ClientTlsPolicy. Must be in the format
  8619  //     `projects/*/locations/{location}`.
  8620  func (r *ProjectsLocationsClientTlsPoliciesService) Create(parent string, clienttlspolicy *ClientTlsPolicy) *ProjectsLocationsClientTlsPoliciesCreateCall {
  8621  	c := &ProjectsLocationsClientTlsPoliciesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8622  	c.parent = parent
  8623  	c.clienttlspolicy = clienttlspolicy
  8624  	return c
  8625  }
  8626  
  8627  // ClientTlsPolicyId sets the optional parameter "clientTlsPolicyId": Required.
  8628  // Short name of the ClientTlsPolicy resource to be created. This value should
  8629  // be 1-63 characters long, containing only letters, numbers, hyphens, and
  8630  // underscores, and should not start with a number. E.g. "client_mtls_policy".
  8631  func (c *ProjectsLocationsClientTlsPoliciesCreateCall) ClientTlsPolicyId(clientTlsPolicyId string) *ProjectsLocationsClientTlsPoliciesCreateCall {
  8632  	c.urlParams_.Set("clientTlsPolicyId", clientTlsPolicyId)
  8633  	return c
  8634  }
  8635  
  8636  // Fields allows partial responses to be retrieved. See
  8637  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8638  // details.
  8639  func (c *ProjectsLocationsClientTlsPoliciesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsClientTlsPoliciesCreateCall {
  8640  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8641  	return c
  8642  }
  8643  
  8644  // Context sets the context to be used in this call's Do method.
  8645  func (c *ProjectsLocationsClientTlsPoliciesCreateCall) Context(ctx context.Context) *ProjectsLocationsClientTlsPoliciesCreateCall {
  8646  	c.ctx_ = ctx
  8647  	return c
  8648  }
  8649  
  8650  // Header returns a http.Header that can be modified by the caller to add
  8651  // headers to the request.
  8652  func (c *ProjectsLocationsClientTlsPoliciesCreateCall) Header() http.Header {
  8653  	if c.header_ == nil {
  8654  		c.header_ = make(http.Header)
  8655  	}
  8656  	return c.header_
  8657  }
  8658  
  8659  func (c *ProjectsLocationsClientTlsPoliciesCreateCall) doRequest(alt string) (*http.Response, error) {
  8660  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  8661  	var body io.Reader = nil
  8662  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.clienttlspolicy)
  8663  	if err != nil {
  8664  		return nil, err
  8665  	}
  8666  	c.urlParams_.Set("alt", alt)
  8667  	c.urlParams_.Set("prettyPrint", "false")
  8668  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/clientTlsPolicies")
  8669  	urls += "?" + c.urlParams_.Encode()
  8670  	req, err := http.NewRequest("POST", urls, body)
  8671  	if err != nil {
  8672  		return nil, err
  8673  	}
  8674  	req.Header = reqHeaders
  8675  	googleapi.Expand(req.URL, map[string]string{
  8676  		"parent": c.parent,
  8677  	})
  8678  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8679  }
  8680  
  8681  // Do executes the "networksecurity.projects.locations.clientTlsPolicies.create" call.
  8682  // Any non-2xx status code is an error. Response headers are in either
  8683  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  8684  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  8685  // whether the returned error was because http.StatusNotModified was returned.
  8686  func (c *ProjectsLocationsClientTlsPoliciesCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  8687  	gensupport.SetOptions(c.urlParams_, opts...)
  8688  	res, err := c.doRequest("json")
  8689  	if res != nil && res.StatusCode == http.StatusNotModified {
  8690  		if res.Body != nil {
  8691  			res.Body.Close()
  8692  		}
  8693  		return nil, gensupport.WrapError(&googleapi.Error{
  8694  			Code:   res.StatusCode,
  8695  			Header: res.Header,
  8696  		})
  8697  	}
  8698  	if err != nil {
  8699  		return nil, err
  8700  	}
  8701  	defer googleapi.CloseBody(res)
  8702  	if err := googleapi.CheckResponse(res); err != nil {
  8703  		return nil, gensupport.WrapError(err)
  8704  	}
  8705  	ret := &Operation{
  8706  		ServerResponse: googleapi.ServerResponse{
  8707  			Header:         res.Header,
  8708  			HTTPStatusCode: res.StatusCode,
  8709  		},
  8710  	}
  8711  	target := &ret
  8712  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8713  		return nil, err
  8714  	}
  8715  	return ret, nil
  8716  }
  8717  
  8718  type ProjectsLocationsClientTlsPoliciesDeleteCall struct {
  8719  	s          *Service
  8720  	name       string
  8721  	urlParams_ gensupport.URLParams
  8722  	ctx_       context.Context
  8723  	header_    http.Header
  8724  }
  8725  
  8726  // Delete: Deletes a single ClientTlsPolicy.
  8727  //
  8728  //   - name: A name of the ClientTlsPolicy to delete. Must be in the format
  8729  //     `projects/*/locations/{location}/clientTlsPolicies/*`.
  8730  func (r *ProjectsLocationsClientTlsPoliciesService) Delete(name string) *ProjectsLocationsClientTlsPoliciesDeleteCall {
  8731  	c := &ProjectsLocationsClientTlsPoliciesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8732  	c.name = name
  8733  	return c
  8734  }
  8735  
  8736  // Fields allows partial responses to be retrieved. See
  8737  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8738  // details.
  8739  func (c *ProjectsLocationsClientTlsPoliciesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsClientTlsPoliciesDeleteCall {
  8740  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8741  	return c
  8742  }
  8743  
  8744  // Context sets the context to be used in this call's Do method.
  8745  func (c *ProjectsLocationsClientTlsPoliciesDeleteCall) Context(ctx context.Context) *ProjectsLocationsClientTlsPoliciesDeleteCall {
  8746  	c.ctx_ = ctx
  8747  	return c
  8748  }
  8749  
  8750  // Header returns a http.Header that can be modified by the caller to add
  8751  // headers to the request.
  8752  func (c *ProjectsLocationsClientTlsPoliciesDeleteCall) Header() http.Header {
  8753  	if c.header_ == nil {
  8754  		c.header_ = make(http.Header)
  8755  	}
  8756  	return c.header_
  8757  }
  8758  
  8759  func (c *ProjectsLocationsClientTlsPoliciesDeleteCall) doRequest(alt string) (*http.Response, error) {
  8760  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  8761  	var body io.Reader = nil
  8762  	c.urlParams_.Set("alt", alt)
  8763  	c.urlParams_.Set("prettyPrint", "false")
  8764  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  8765  	urls += "?" + c.urlParams_.Encode()
  8766  	req, err := http.NewRequest("DELETE", urls, body)
  8767  	if err != nil {
  8768  		return nil, err
  8769  	}
  8770  	req.Header = reqHeaders
  8771  	googleapi.Expand(req.URL, map[string]string{
  8772  		"name": c.name,
  8773  	})
  8774  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8775  }
  8776  
  8777  // Do executes the "networksecurity.projects.locations.clientTlsPolicies.delete" call.
  8778  // Any non-2xx status code is an error. Response headers are in either
  8779  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  8780  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  8781  // whether the returned error was because http.StatusNotModified was returned.
  8782  func (c *ProjectsLocationsClientTlsPoliciesDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  8783  	gensupport.SetOptions(c.urlParams_, opts...)
  8784  	res, err := c.doRequest("json")
  8785  	if res != nil && res.StatusCode == http.StatusNotModified {
  8786  		if res.Body != nil {
  8787  			res.Body.Close()
  8788  		}
  8789  		return nil, gensupport.WrapError(&googleapi.Error{
  8790  			Code:   res.StatusCode,
  8791  			Header: res.Header,
  8792  		})
  8793  	}
  8794  	if err != nil {
  8795  		return nil, err
  8796  	}
  8797  	defer googleapi.CloseBody(res)
  8798  	if err := googleapi.CheckResponse(res); err != nil {
  8799  		return nil, gensupport.WrapError(err)
  8800  	}
  8801  	ret := &Operation{
  8802  		ServerResponse: googleapi.ServerResponse{
  8803  			Header:         res.Header,
  8804  			HTTPStatusCode: res.StatusCode,
  8805  		},
  8806  	}
  8807  	target := &ret
  8808  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8809  		return nil, err
  8810  	}
  8811  	return ret, nil
  8812  }
  8813  
  8814  type ProjectsLocationsClientTlsPoliciesGetCall struct {
  8815  	s            *Service
  8816  	name         string
  8817  	urlParams_   gensupport.URLParams
  8818  	ifNoneMatch_ string
  8819  	ctx_         context.Context
  8820  	header_      http.Header
  8821  }
  8822  
  8823  // Get: Gets details of a single ClientTlsPolicy.
  8824  //
  8825  //   - name: A name of the ClientTlsPolicy to get. Must be in the format
  8826  //     `projects/*/locations/{location}/clientTlsPolicies/*`.
  8827  func (r *ProjectsLocationsClientTlsPoliciesService) Get(name string) *ProjectsLocationsClientTlsPoliciesGetCall {
  8828  	c := &ProjectsLocationsClientTlsPoliciesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8829  	c.name = name
  8830  	return c
  8831  }
  8832  
  8833  // Fields allows partial responses to be retrieved. See
  8834  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8835  // details.
  8836  func (c *ProjectsLocationsClientTlsPoliciesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsClientTlsPoliciesGetCall {
  8837  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8838  	return c
  8839  }
  8840  
  8841  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  8842  // object's ETag matches the given value. This is useful for getting updates
  8843  // only after the object has changed since the last request.
  8844  func (c *ProjectsLocationsClientTlsPoliciesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsClientTlsPoliciesGetCall {
  8845  	c.ifNoneMatch_ = entityTag
  8846  	return c
  8847  }
  8848  
  8849  // Context sets the context to be used in this call's Do method.
  8850  func (c *ProjectsLocationsClientTlsPoliciesGetCall) Context(ctx context.Context) *ProjectsLocationsClientTlsPoliciesGetCall {
  8851  	c.ctx_ = ctx
  8852  	return c
  8853  }
  8854  
  8855  // Header returns a http.Header that can be modified by the caller to add
  8856  // headers to the request.
  8857  func (c *ProjectsLocationsClientTlsPoliciesGetCall) Header() http.Header {
  8858  	if c.header_ == nil {
  8859  		c.header_ = make(http.Header)
  8860  	}
  8861  	return c.header_
  8862  }
  8863  
  8864  func (c *ProjectsLocationsClientTlsPoliciesGetCall) doRequest(alt string) (*http.Response, error) {
  8865  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  8866  	if c.ifNoneMatch_ != "" {
  8867  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  8868  	}
  8869  	var body io.Reader = nil
  8870  	c.urlParams_.Set("alt", alt)
  8871  	c.urlParams_.Set("prettyPrint", "false")
  8872  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  8873  	urls += "?" + c.urlParams_.Encode()
  8874  	req, err := http.NewRequest("GET", urls, body)
  8875  	if err != nil {
  8876  		return nil, err
  8877  	}
  8878  	req.Header = reqHeaders
  8879  	googleapi.Expand(req.URL, map[string]string{
  8880  		"name": c.name,
  8881  	})
  8882  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8883  }
  8884  
  8885  // Do executes the "networksecurity.projects.locations.clientTlsPolicies.get" call.
  8886  // Any non-2xx status code is an error. Response headers are in either
  8887  // *ClientTlsPolicy.ServerResponse.Header or (if a response was returned at
  8888  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  8889  // check whether the returned error was because http.StatusNotModified was
  8890  // returned.
  8891  func (c *ProjectsLocationsClientTlsPoliciesGetCall) Do(opts ...googleapi.CallOption) (*ClientTlsPolicy, error) {
  8892  	gensupport.SetOptions(c.urlParams_, opts...)
  8893  	res, err := c.doRequest("json")
  8894  	if res != nil && res.StatusCode == http.StatusNotModified {
  8895  		if res.Body != nil {
  8896  			res.Body.Close()
  8897  		}
  8898  		return nil, gensupport.WrapError(&googleapi.Error{
  8899  			Code:   res.StatusCode,
  8900  			Header: res.Header,
  8901  		})
  8902  	}
  8903  	if err != nil {
  8904  		return nil, err
  8905  	}
  8906  	defer googleapi.CloseBody(res)
  8907  	if err := googleapi.CheckResponse(res); err != nil {
  8908  		return nil, gensupport.WrapError(err)
  8909  	}
  8910  	ret := &ClientTlsPolicy{
  8911  		ServerResponse: googleapi.ServerResponse{
  8912  			Header:         res.Header,
  8913  			HTTPStatusCode: res.StatusCode,
  8914  		},
  8915  	}
  8916  	target := &ret
  8917  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8918  		return nil, err
  8919  	}
  8920  	return ret, nil
  8921  }
  8922  
  8923  type ProjectsLocationsClientTlsPoliciesGetIamPolicyCall struct {
  8924  	s            *Service
  8925  	resource     string
  8926  	urlParams_   gensupport.URLParams
  8927  	ifNoneMatch_ string
  8928  	ctx_         context.Context
  8929  	header_      http.Header
  8930  }
  8931  
  8932  // GetIamPolicy: Gets the access control policy for a resource. Returns an
  8933  // empty policy if the resource exists and does not have a policy set.
  8934  //
  8935  //   - resource: REQUIRED: The resource for which the policy is being requested.
  8936  //     See Resource names (https://cloud.google.com/apis/design/resource_names)
  8937  //     for the appropriate value for this field.
  8938  func (r *ProjectsLocationsClientTlsPoliciesService) GetIamPolicy(resource string) *ProjectsLocationsClientTlsPoliciesGetIamPolicyCall {
  8939  	c := &ProjectsLocationsClientTlsPoliciesGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8940  	c.resource = resource
  8941  	return c
  8942  }
  8943  
  8944  // OptionsRequestedPolicyVersion sets the optional parameter
  8945  // "options.requestedPolicyVersion": The maximum policy version that will be
  8946  // used to format the policy. Valid values are 0, 1, and 3. Requests specifying
  8947  // an invalid value will be rejected. Requests for policies with any
  8948  // conditional role bindings must specify version 3. Policies with no
  8949  // conditional role bindings may specify any valid value or leave the field
  8950  // unset. The policy in the response might use the policy version that you
  8951  // specified, or it might use a lower policy version. For example, if you
  8952  // specify version 3, but the policy has no conditional role bindings, the
  8953  // response uses version 1. To learn which resources support conditions in
  8954  // their IAM policies, see the IAM documentation
  8955  // (https://cloud.google.com/iam/help/conditions/resource-policies).
  8956  func (c *ProjectsLocationsClientTlsPoliciesGetIamPolicyCall) OptionsRequestedPolicyVersion(optionsRequestedPolicyVersion int64) *ProjectsLocationsClientTlsPoliciesGetIamPolicyCall {
  8957  	c.urlParams_.Set("options.requestedPolicyVersion", fmt.Sprint(optionsRequestedPolicyVersion))
  8958  	return c
  8959  }
  8960  
  8961  // Fields allows partial responses to be retrieved. See
  8962  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8963  // details.
  8964  func (c *ProjectsLocationsClientTlsPoliciesGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsClientTlsPoliciesGetIamPolicyCall {
  8965  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8966  	return c
  8967  }
  8968  
  8969  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  8970  // object's ETag matches the given value. This is useful for getting updates
  8971  // only after the object has changed since the last request.
  8972  func (c *ProjectsLocationsClientTlsPoliciesGetIamPolicyCall) IfNoneMatch(entityTag string) *ProjectsLocationsClientTlsPoliciesGetIamPolicyCall {
  8973  	c.ifNoneMatch_ = entityTag
  8974  	return c
  8975  }
  8976  
  8977  // Context sets the context to be used in this call's Do method.
  8978  func (c *ProjectsLocationsClientTlsPoliciesGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsClientTlsPoliciesGetIamPolicyCall {
  8979  	c.ctx_ = ctx
  8980  	return c
  8981  }
  8982  
  8983  // Header returns a http.Header that can be modified by the caller to add
  8984  // headers to the request.
  8985  func (c *ProjectsLocationsClientTlsPoliciesGetIamPolicyCall) Header() http.Header {
  8986  	if c.header_ == nil {
  8987  		c.header_ = make(http.Header)
  8988  	}
  8989  	return c.header_
  8990  }
  8991  
  8992  func (c *ProjectsLocationsClientTlsPoliciesGetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
  8993  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  8994  	if c.ifNoneMatch_ != "" {
  8995  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  8996  	}
  8997  	var body io.Reader = nil
  8998  	c.urlParams_.Set("alt", alt)
  8999  	c.urlParams_.Set("prettyPrint", "false")
  9000  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:getIamPolicy")
  9001  	urls += "?" + c.urlParams_.Encode()
  9002  	req, err := http.NewRequest("GET", urls, body)
  9003  	if err != nil {
  9004  		return nil, err
  9005  	}
  9006  	req.Header = reqHeaders
  9007  	googleapi.Expand(req.URL, map[string]string{
  9008  		"resource": c.resource,
  9009  	})
  9010  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9011  }
  9012  
  9013  // Do executes the "networksecurity.projects.locations.clientTlsPolicies.getIamPolicy" call.
  9014  // Any non-2xx status code is an error. Response headers are in either
  9015  // *GoogleIamV1Policy.ServerResponse.Header or (if a response was returned at
  9016  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  9017  // check whether the returned error was because http.StatusNotModified was
  9018  // returned.
  9019  func (c *ProjectsLocationsClientTlsPoliciesGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1Policy, error) {
  9020  	gensupport.SetOptions(c.urlParams_, opts...)
  9021  	res, err := c.doRequest("json")
  9022  	if res != nil && res.StatusCode == http.StatusNotModified {
  9023  		if res.Body != nil {
  9024  			res.Body.Close()
  9025  		}
  9026  		return nil, gensupport.WrapError(&googleapi.Error{
  9027  			Code:   res.StatusCode,
  9028  			Header: res.Header,
  9029  		})
  9030  	}
  9031  	if err != nil {
  9032  		return nil, err
  9033  	}
  9034  	defer googleapi.CloseBody(res)
  9035  	if err := googleapi.CheckResponse(res); err != nil {
  9036  		return nil, gensupport.WrapError(err)
  9037  	}
  9038  	ret := &GoogleIamV1Policy{
  9039  		ServerResponse: googleapi.ServerResponse{
  9040  			Header:         res.Header,
  9041  			HTTPStatusCode: res.StatusCode,
  9042  		},
  9043  	}
  9044  	target := &ret
  9045  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9046  		return nil, err
  9047  	}
  9048  	return ret, nil
  9049  }
  9050  
  9051  type ProjectsLocationsClientTlsPoliciesListCall struct {
  9052  	s            *Service
  9053  	parent       string
  9054  	urlParams_   gensupport.URLParams
  9055  	ifNoneMatch_ string
  9056  	ctx_         context.Context
  9057  	header_      http.Header
  9058  }
  9059  
  9060  // List: Lists ClientTlsPolicies in a given project and location.
  9061  //
  9062  //   - parent: The project and location from which the ClientTlsPolicies should
  9063  //     be listed, specified in the format `projects/*/locations/{location}`.
  9064  func (r *ProjectsLocationsClientTlsPoliciesService) List(parent string) *ProjectsLocationsClientTlsPoliciesListCall {
  9065  	c := &ProjectsLocationsClientTlsPoliciesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9066  	c.parent = parent
  9067  	return c
  9068  }
  9069  
  9070  // PageSize sets the optional parameter "pageSize": Maximum number of
  9071  // ClientTlsPolicies to return per call.
  9072  func (c *ProjectsLocationsClientTlsPoliciesListCall) PageSize(pageSize int64) *ProjectsLocationsClientTlsPoliciesListCall {
  9073  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  9074  	return c
  9075  }
  9076  
  9077  // PageToken sets the optional parameter "pageToken": The value returned by the
  9078  // last `ListClientTlsPoliciesResponse` Indicates that this is a continuation
  9079  // of a prior `ListClientTlsPolicies` call, and that the system should return
  9080  // the next page of data.
  9081  func (c *ProjectsLocationsClientTlsPoliciesListCall) PageToken(pageToken string) *ProjectsLocationsClientTlsPoliciesListCall {
  9082  	c.urlParams_.Set("pageToken", pageToken)
  9083  	return c
  9084  }
  9085  
  9086  // Fields allows partial responses to be retrieved. See
  9087  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9088  // details.
  9089  func (c *ProjectsLocationsClientTlsPoliciesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsClientTlsPoliciesListCall {
  9090  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9091  	return c
  9092  }
  9093  
  9094  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  9095  // object's ETag matches the given value. This is useful for getting updates
  9096  // only after the object has changed since the last request.
  9097  func (c *ProjectsLocationsClientTlsPoliciesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsClientTlsPoliciesListCall {
  9098  	c.ifNoneMatch_ = entityTag
  9099  	return c
  9100  }
  9101  
  9102  // Context sets the context to be used in this call's Do method.
  9103  func (c *ProjectsLocationsClientTlsPoliciesListCall) Context(ctx context.Context) *ProjectsLocationsClientTlsPoliciesListCall {
  9104  	c.ctx_ = ctx
  9105  	return c
  9106  }
  9107  
  9108  // Header returns a http.Header that can be modified by the caller to add
  9109  // headers to the request.
  9110  func (c *ProjectsLocationsClientTlsPoliciesListCall) Header() http.Header {
  9111  	if c.header_ == nil {
  9112  		c.header_ = make(http.Header)
  9113  	}
  9114  	return c.header_
  9115  }
  9116  
  9117  func (c *ProjectsLocationsClientTlsPoliciesListCall) doRequest(alt string) (*http.Response, error) {
  9118  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  9119  	if c.ifNoneMatch_ != "" {
  9120  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  9121  	}
  9122  	var body io.Reader = nil
  9123  	c.urlParams_.Set("alt", alt)
  9124  	c.urlParams_.Set("prettyPrint", "false")
  9125  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/clientTlsPolicies")
  9126  	urls += "?" + c.urlParams_.Encode()
  9127  	req, err := http.NewRequest("GET", urls, body)
  9128  	if err != nil {
  9129  		return nil, err
  9130  	}
  9131  	req.Header = reqHeaders
  9132  	googleapi.Expand(req.URL, map[string]string{
  9133  		"parent": c.parent,
  9134  	})
  9135  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9136  }
  9137  
  9138  // Do executes the "networksecurity.projects.locations.clientTlsPolicies.list" call.
  9139  // Any non-2xx status code is an error. Response headers are in either
  9140  // *ListClientTlsPoliciesResponse.ServerResponse.Header or (if a response was
  9141  // returned at all) in error.(*googleapi.Error).Header. Use
  9142  // googleapi.IsNotModified to check whether the returned error was because
  9143  // http.StatusNotModified was returned.
  9144  func (c *ProjectsLocationsClientTlsPoliciesListCall) Do(opts ...googleapi.CallOption) (*ListClientTlsPoliciesResponse, error) {
  9145  	gensupport.SetOptions(c.urlParams_, opts...)
  9146  	res, err := c.doRequest("json")
  9147  	if res != nil && res.StatusCode == http.StatusNotModified {
  9148  		if res.Body != nil {
  9149  			res.Body.Close()
  9150  		}
  9151  		return nil, gensupport.WrapError(&googleapi.Error{
  9152  			Code:   res.StatusCode,
  9153  			Header: res.Header,
  9154  		})
  9155  	}
  9156  	if err != nil {
  9157  		return nil, err
  9158  	}
  9159  	defer googleapi.CloseBody(res)
  9160  	if err := googleapi.CheckResponse(res); err != nil {
  9161  		return nil, gensupport.WrapError(err)
  9162  	}
  9163  	ret := &ListClientTlsPoliciesResponse{
  9164  		ServerResponse: googleapi.ServerResponse{
  9165  			Header:         res.Header,
  9166  			HTTPStatusCode: res.StatusCode,
  9167  		},
  9168  	}
  9169  	target := &ret
  9170  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9171  		return nil, err
  9172  	}
  9173  	return ret, nil
  9174  }
  9175  
  9176  // Pages invokes f for each page of results.
  9177  // A non-nil error returned from f will halt the iteration.
  9178  // The provided context supersedes any context provided to the Context method.
  9179  func (c *ProjectsLocationsClientTlsPoliciesListCall) Pages(ctx context.Context, f func(*ListClientTlsPoliciesResponse) error) error {
  9180  	c.ctx_ = ctx
  9181  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  9182  	for {
  9183  		x, err := c.Do()
  9184  		if err != nil {
  9185  			return err
  9186  		}
  9187  		if err := f(x); err != nil {
  9188  			return err
  9189  		}
  9190  		if x.NextPageToken == "" {
  9191  			return nil
  9192  		}
  9193  		c.PageToken(x.NextPageToken)
  9194  	}
  9195  }
  9196  
  9197  type ProjectsLocationsClientTlsPoliciesPatchCall struct {
  9198  	s               *Service
  9199  	name            string
  9200  	clienttlspolicy *ClientTlsPolicy
  9201  	urlParams_      gensupport.URLParams
  9202  	ctx_            context.Context
  9203  	header_         http.Header
  9204  }
  9205  
  9206  // Patch: Updates the parameters of a single ClientTlsPolicy.
  9207  //
  9208  //   - name: Name of the ClientTlsPolicy resource. It matches the pattern
  9209  //     `projects/*/locations/{location}/clientTlsPolicies/{client_tls_policy}`.
  9210  func (r *ProjectsLocationsClientTlsPoliciesService) Patch(name string, clienttlspolicy *ClientTlsPolicy) *ProjectsLocationsClientTlsPoliciesPatchCall {
  9211  	c := &ProjectsLocationsClientTlsPoliciesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9212  	c.name = name
  9213  	c.clienttlspolicy = clienttlspolicy
  9214  	return c
  9215  }
  9216  
  9217  // UpdateMask sets the optional parameter "updateMask": Field mask is used to
  9218  // specify the fields to be overwritten in the ClientTlsPolicy resource by the
  9219  // update. The fields specified in the update_mask are relative to the
  9220  // resource, not the full request. A field will be overwritten if it is in the
  9221  // mask. If the user does not provide a mask then all fields will be
  9222  // overwritten.
  9223  func (c *ProjectsLocationsClientTlsPoliciesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsClientTlsPoliciesPatchCall {
  9224  	c.urlParams_.Set("updateMask", updateMask)
  9225  	return c
  9226  }
  9227  
  9228  // Fields allows partial responses to be retrieved. See
  9229  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9230  // details.
  9231  func (c *ProjectsLocationsClientTlsPoliciesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsClientTlsPoliciesPatchCall {
  9232  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9233  	return c
  9234  }
  9235  
  9236  // Context sets the context to be used in this call's Do method.
  9237  func (c *ProjectsLocationsClientTlsPoliciesPatchCall) Context(ctx context.Context) *ProjectsLocationsClientTlsPoliciesPatchCall {
  9238  	c.ctx_ = ctx
  9239  	return c
  9240  }
  9241  
  9242  // Header returns a http.Header that can be modified by the caller to add
  9243  // headers to the request.
  9244  func (c *ProjectsLocationsClientTlsPoliciesPatchCall) Header() http.Header {
  9245  	if c.header_ == nil {
  9246  		c.header_ = make(http.Header)
  9247  	}
  9248  	return c.header_
  9249  }
  9250  
  9251  func (c *ProjectsLocationsClientTlsPoliciesPatchCall) doRequest(alt string) (*http.Response, error) {
  9252  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  9253  	var body io.Reader = nil
  9254  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.clienttlspolicy)
  9255  	if err != nil {
  9256  		return nil, err
  9257  	}
  9258  	c.urlParams_.Set("alt", alt)
  9259  	c.urlParams_.Set("prettyPrint", "false")
  9260  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  9261  	urls += "?" + c.urlParams_.Encode()
  9262  	req, err := http.NewRequest("PATCH", urls, body)
  9263  	if err != nil {
  9264  		return nil, err
  9265  	}
  9266  	req.Header = reqHeaders
  9267  	googleapi.Expand(req.URL, map[string]string{
  9268  		"name": c.name,
  9269  	})
  9270  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9271  }
  9272  
  9273  // Do executes the "networksecurity.projects.locations.clientTlsPolicies.patch" call.
  9274  // Any non-2xx status code is an error. Response headers are in either
  9275  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  9276  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  9277  // whether the returned error was because http.StatusNotModified was returned.
  9278  func (c *ProjectsLocationsClientTlsPoliciesPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  9279  	gensupport.SetOptions(c.urlParams_, opts...)
  9280  	res, err := c.doRequest("json")
  9281  	if res != nil && res.StatusCode == http.StatusNotModified {
  9282  		if res.Body != nil {
  9283  			res.Body.Close()
  9284  		}
  9285  		return nil, gensupport.WrapError(&googleapi.Error{
  9286  			Code:   res.StatusCode,
  9287  			Header: res.Header,
  9288  		})
  9289  	}
  9290  	if err != nil {
  9291  		return nil, err
  9292  	}
  9293  	defer googleapi.CloseBody(res)
  9294  	if err := googleapi.CheckResponse(res); err != nil {
  9295  		return nil, gensupport.WrapError(err)
  9296  	}
  9297  	ret := &Operation{
  9298  		ServerResponse: googleapi.ServerResponse{
  9299  			Header:         res.Header,
  9300  			HTTPStatusCode: res.StatusCode,
  9301  		},
  9302  	}
  9303  	target := &ret
  9304  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9305  		return nil, err
  9306  	}
  9307  	return ret, nil
  9308  }
  9309  
  9310  type ProjectsLocationsClientTlsPoliciesSetIamPolicyCall struct {
  9311  	s                              *Service
  9312  	resource                       string
  9313  	googleiamv1setiampolicyrequest *GoogleIamV1SetIamPolicyRequest
  9314  	urlParams_                     gensupport.URLParams
  9315  	ctx_                           context.Context
  9316  	header_                        http.Header
  9317  }
  9318  
  9319  // SetIamPolicy: Sets the access control policy on the specified resource.
  9320  // Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`,
  9321  // and `PERMISSION_DENIED` errors.
  9322  //
  9323  //   - resource: REQUIRED: The resource for which the policy is being specified.
  9324  //     See Resource names (https://cloud.google.com/apis/design/resource_names)
  9325  //     for the appropriate value for this field.
  9326  func (r *ProjectsLocationsClientTlsPoliciesService) SetIamPolicy(resource string, googleiamv1setiampolicyrequest *GoogleIamV1SetIamPolicyRequest) *ProjectsLocationsClientTlsPoliciesSetIamPolicyCall {
  9327  	c := &ProjectsLocationsClientTlsPoliciesSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9328  	c.resource = resource
  9329  	c.googleiamv1setiampolicyrequest = googleiamv1setiampolicyrequest
  9330  	return c
  9331  }
  9332  
  9333  // Fields allows partial responses to be retrieved. See
  9334  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9335  // details.
  9336  func (c *ProjectsLocationsClientTlsPoliciesSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsClientTlsPoliciesSetIamPolicyCall {
  9337  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9338  	return c
  9339  }
  9340  
  9341  // Context sets the context to be used in this call's Do method.
  9342  func (c *ProjectsLocationsClientTlsPoliciesSetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsClientTlsPoliciesSetIamPolicyCall {
  9343  	c.ctx_ = ctx
  9344  	return c
  9345  }
  9346  
  9347  // Header returns a http.Header that can be modified by the caller to add
  9348  // headers to the request.
  9349  func (c *ProjectsLocationsClientTlsPoliciesSetIamPolicyCall) Header() http.Header {
  9350  	if c.header_ == nil {
  9351  		c.header_ = make(http.Header)
  9352  	}
  9353  	return c.header_
  9354  }
  9355  
  9356  func (c *ProjectsLocationsClientTlsPoliciesSetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
  9357  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  9358  	var body io.Reader = nil
  9359  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleiamv1setiampolicyrequest)
  9360  	if err != nil {
  9361  		return nil, err
  9362  	}
  9363  	c.urlParams_.Set("alt", alt)
  9364  	c.urlParams_.Set("prettyPrint", "false")
  9365  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:setIamPolicy")
  9366  	urls += "?" + c.urlParams_.Encode()
  9367  	req, err := http.NewRequest("POST", urls, body)
  9368  	if err != nil {
  9369  		return nil, err
  9370  	}
  9371  	req.Header = reqHeaders
  9372  	googleapi.Expand(req.URL, map[string]string{
  9373  		"resource": c.resource,
  9374  	})
  9375  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9376  }
  9377  
  9378  // Do executes the "networksecurity.projects.locations.clientTlsPolicies.setIamPolicy" call.
  9379  // Any non-2xx status code is an error. Response headers are in either
  9380  // *GoogleIamV1Policy.ServerResponse.Header or (if a response was returned at
  9381  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  9382  // check whether the returned error was because http.StatusNotModified was
  9383  // returned.
  9384  func (c *ProjectsLocationsClientTlsPoliciesSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1Policy, error) {
  9385  	gensupport.SetOptions(c.urlParams_, opts...)
  9386  	res, err := c.doRequest("json")
  9387  	if res != nil && res.StatusCode == http.StatusNotModified {
  9388  		if res.Body != nil {
  9389  			res.Body.Close()
  9390  		}
  9391  		return nil, gensupport.WrapError(&googleapi.Error{
  9392  			Code:   res.StatusCode,
  9393  			Header: res.Header,
  9394  		})
  9395  	}
  9396  	if err != nil {
  9397  		return nil, err
  9398  	}
  9399  	defer googleapi.CloseBody(res)
  9400  	if err := googleapi.CheckResponse(res); err != nil {
  9401  		return nil, gensupport.WrapError(err)
  9402  	}
  9403  	ret := &GoogleIamV1Policy{
  9404  		ServerResponse: googleapi.ServerResponse{
  9405  			Header:         res.Header,
  9406  			HTTPStatusCode: res.StatusCode,
  9407  		},
  9408  	}
  9409  	target := &ret
  9410  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9411  		return nil, err
  9412  	}
  9413  	return ret, nil
  9414  }
  9415  
  9416  type ProjectsLocationsClientTlsPoliciesTestIamPermissionsCall struct {
  9417  	s                                    *Service
  9418  	resource                             string
  9419  	googleiamv1testiampermissionsrequest *GoogleIamV1TestIamPermissionsRequest
  9420  	urlParams_                           gensupport.URLParams
  9421  	ctx_                                 context.Context
  9422  	header_                              http.Header
  9423  }
  9424  
  9425  // TestIamPermissions: Returns permissions that a caller has on the specified
  9426  // resource. If the resource does not exist, this will return an empty set of
  9427  // permissions, not a `NOT_FOUND` error. Note: This operation is designed to be
  9428  // used for building permission-aware UIs and command-line tools, not for
  9429  // authorization checking. This operation may "fail open" without warning.
  9430  //
  9431  //   - resource: REQUIRED: The resource for which the policy detail is being
  9432  //     requested. See Resource names
  9433  //     (https://cloud.google.com/apis/design/resource_names) for the appropriate
  9434  //     value for this field.
  9435  func (r *ProjectsLocationsClientTlsPoliciesService) TestIamPermissions(resource string, googleiamv1testiampermissionsrequest *GoogleIamV1TestIamPermissionsRequest) *ProjectsLocationsClientTlsPoliciesTestIamPermissionsCall {
  9436  	c := &ProjectsLocationsClientTlsPoliciesTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9437  	c.resource = resource
  9438  	c.googleiamv1testiampermissionsrequest = googleiamv1testiampermissionsrequest
  9439  	return c
  9440  }
  9441  
  9442  // Fields allows partial responses to be retrieved. See
  9443  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9444  // details.
  9445  func (c *ProjectsLocationsClientTlsPoliciesTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsLocationsClientTlsPoliciesTestIamPermissionsCall {
  9446  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9447  	return c
  9448  }
  9449  
  9450  // Context sets the context to be used in this call's Do method.
  9451  func (c *ProjectsLocationsClientTlsPoliciesTestIamPermissionsCall) Context(ctx context.Context) *ProjectsLocationsClientTlsPoliciesTestIamPermissionsCall {
  9452  	c.ctx_ = ctx
  9453  	return c
  9454  }
  9455  
  9456  // Header returns a http.Header that can be modified by the caller to add
  9457  // headers to the request.
  9458  func (c *ProjectsLocationsClientTlsPoliciesTestIamPermissionsCall) Header() http.Header {
  9459  	if c.header_ == nil {
  9460  		c.header_ = make(http.Header)
  9461  	}
  9462  	return c.header_
  9463  }
  9464  
  9465  func (c *ProjectsLocationsClientTlsPoliciesTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) {
  9466  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  9467  	var body io.Reader = nil
  9468  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleiamv1testiampermissionsrequest)
  9469  	if err != nil {
  9470  		return nil, err
  9471  	}
  9472  	c.urlParams_.Set("alt", alt)
  9473  	c.urlParams_.Set("prettyPrint", "false")
  9474  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:testIamPermissions")
  9475  	urls += "?" + c.urlParams_.Encode()
  9476  	req, err := http.NewRequest("POST", urls, body)
  9477  	if err != nil {
  9478  		return nil, err
  9479  	}
  9480  	req.Header = reqHeaders
  9481  	googleapi.Expand(req.URL, map[string]string{
  9482  		"resource": c.resource,
  9483  	})
  9484  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9485  }
  9486  
  9487  // Do executes the "networksecurity.projects.locations.clientTlsPolicies.testIamPermissions" call.
  9488  // Any non-2xx status code is an error. Response headers are in either
  9489  // *GoogleIamV1TestIamPermissionsResponse.ServerResponse.Header or (if a
  9490  // response was returned at all) in error.(*googleapi.Error).Header. Use
  9491  // googleapi.IsNotModified to check whether the returned error was because
  9492  // http.StatusNotModified was returned.
  9493  func (c *ProjectsLocationsClientTlsPoliciesTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1TestIamPermissionsResponse, error) {
  9494  	gensupport.SetOptions(c.urlParams_, opts...)
  9495  	res, err := c.doRequest("json")
  9496  	if res != nil && res.StatusCode == http.StatusNotModified {
  9497  		if res.Body != nil {
  9498  			res.Body.Close()
  9499  		}
  9500  		return nil, gensupport.WrapError(&googleapi.Error{
  9501  			Code:   res.StatusCode,
  9502  			Header: res.Header,
  9503  		})
  9504  	}
  9505  	if err != nil {
  9506  		return nil, err
  9507  	}
  9508  	defer googleapi.CloseBody(res)
  9509  	if err := googleapi.CheckResponse(res); err != nil {
  9510  		return nil, gensupport.WrapError(err)
  9511  	}
  9512  	ret := &GoogleIamV1TestIamPermissionsResponse{
  9513  		ServerResponse: googleapi.ServerResponse{
  9514  			Header:         res.Header,
  9515  			HTTPStatusCode: res.StatusCode,
  9516  		},
  9517  	}
  9518  	target := &ret
  9519  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9520  		return nil, err
  9521  	}
  9522  	return ret, nil
  9523  }
  9524  
  9525  type ProjectsLocationsFirewallEndpointAssociationsCreateCall struct {
  9526  	s                           *Service
  9527  	parent                      string
  9528  	firewallendpointassociation *FirewallEndpointAssociation
  9529  	urlParams_                  gensupport.URLParams
  9530  	ctx_                        context.Context
  9531  	header_                     http.Header
  9532  }
  9533  
  9534  // Create: Creates a new FirewallEndpointAssociation in a given project and
  9535  // location.
  9536  //
  9537  // - parent: Value for parent.
  9538  func (r *ProjectsLocationsFirewallEndpointAssociationsService) Create(parent string, firewallendpointassociation *FirewallEndpointAssociation) *ProjectsLocationsFirewallEndpointAssociationsCreateCall {
  9539  	c := &ProjectsLocationsFirewallEndpointAssociationsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9540  	c.parent = parent
  9541  	c.firewallendpointassociation = firewallendpointassociation
  9542  	return c
  9543  }
  9544  
  9545  // FirewallEndpointAssociationId sets the optional parameter
  9546  // "firewallEndpointAssociationId": Id of the requesting object. If
  9547  // auto-generating Id server-side, remove this field and
  9548  // firewall_endpoint_association_id from the method_signature of Create RPC.
  9549  func (c *ProjectsLocationsFirewallEndpointAssociationsCreateCall) FirewallEndpointAssociationId(firewallEndpointAssociationId string) *ProjectsLocationsFirewallEndpointAssociationsCreateCall {
  9550  	c.urlParams_.Set("firewallEndpointAssociationId", firewallEndpointAssociationId)
  9551  	return c
  9552  }
  9553  
  9554  // RequestId sets the optional parameter "requestId": An optional request ID to
  9555  // identify requests. Specify a unique request ID so that if you must retry
  9556  // your request, the server will know to ignore the request if it has already
  9557  // been completed. The server will guarantee that for at least 60 minutes since
  9558  // the first request. For example, consider a situation where you make an
  9559  // initial request and the request times out. If you make the request again
  9560  // with the same request ID, the server can check if original operation with
  9561  // the same request ID was received, and if so, will ignore the second request.
  9562  // This prevents clients from accidentally creating duplicate commitments. The
  9563  // request ID must be a valid UUID with the exception that zero UUID is not
  9564  // supported (00000000-0000-0000-0000-000000000000).
  9565  func (c *ProjectsLocationsFirewallEndpointAssociationsCreateCall) RequestId(requestId string) *ProjectsLocationsFirewallEndpointAssociationsCreateCall {
  9566  	c.urlParams_.Set("requestId", requestId)
  9567  	return c
  9568  }
  9569  
  9570  // Fields allows partial responses to be retrieved. See
  9571  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9572  // details.
  9573  func (c *ProjectsLocationsFirewallEndpointAssociationsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsFirewallEndpointAssociationsCreateCall {
  9574  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9575  	return c
  9576  }
  9577  
  9578  // Context sets the context to be used in this call's Do method.
  9579  func (c *ProjectsLocationsFirewallEndpointAssociationsCreateCall) Context(ctx context.Context) *ProjectsLocationsFirewallEndpointAssociationsCreateCall {
  9580  	c.ctx_ = ctx
  9581  	return c
  9582  }
  9583  
  9584  // Header returns a http.Header that can be modified by the caller to add
  9585  // headers to the request.
  9586  func (c *ProjectsLocationsFirewallEndpointAssociationsCreateCall) Header() http.Header {
  9587  	if c.header_ == nil {
  9588  		c.header_ = make(http.Header)
  9589  	}
  9590  	return c.header_
  9591  }
  9592  
  9593  func (c *ProjectsLocationsFirewallEndpointAssociationsCreateCall) doRequest(alt string) (*http.Response, error) {
  9594  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  9595  	var body io.Reader = nil
  9596  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.firewallendpointassociation)
  9597  	if err != nil {
  9598  		return nil, err
  9599  	}
  9600  	c.urlParams_.Set("alt", alt)
  9601  	c.urlParams_.Set("prettyPrint", "false")
  9602  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/firewallEndpointAssociations")
  9603  	urls += "?" + c.urlParams_.Encode()
  9604  	req, err := http.NewRequest("POST", urls, body)
  9605  	if err != nil {
  9606  		return nil, err
  9607  	}
  9608  	req.Header = reqHeaders
  9609  	googleapi.Expand(req.URL, map[string]string{
  9610  		"parent": c.parent,
  9611  	})
  9612  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9613  }
  9614  
  9615  // Do executes the "networksecurity.projects.locations.firewallEndpointAssociations.create" call.
  9616  // Any non-2xx status code is an error. Response headers are in either
  9617  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  9618  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  9619  // whether the returned error was because http.StatusNotModified was returned.
  9620  func (c *ProjectsLocationsFirewallEndpointAssociationsCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  9621  	gensupport.SetOptions(c.urlParams_, opts...)
  9622  	res, err := c.doRequest("json")
  9623  	if res != nil && res.StatusCode == http.StatusNotModified {
  9624  		if res.Body != nil {
  9625  			res.Body.Close()
  9626  		}
  9627  		return nil, gensupport.WrapError(&googleapi.Error{
  9628  			Code:   res.StatusCode,
  9629  			Header: res.Header,
  9630  		})
  9631  	}
  9632  	if err != nil {
  9633  		return nil, err
  9634  	}
  9635  	defer googleapi.CloseBody(res)
  9636  	if err := googleapi.CheckResponse(res); err != nil {
  9637  		return nil, gensupport.WrapError(err)
  9638  	}
  9639  	ret := &Operation{
  9640  		ServerResponse: googleapi.ServerResponse{
  9641  			Header:         res.Header,
  9642  			HTTPStatusCode: res.StatusCode,
  9643  		},
  9644  	}
  9645  	target := &ret
  9646  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9647  		return nil, err
  9648  	}
  9649  	return ret, nil
  9650  }
  9651  
  9652  type ProjectsLocationsFirewallEndpointAssociationsDeleteCall struct {
  9653  	s          *Service
  9654  	name       string
  9655  	urlParams_ gensupport.URLParams
  9656  	ctx_       context.Context
  9657  	header_    http.Header
  9658  }
  9659  
  9660  // Delete: Deletes a single FirewallEndpointAssociation.
  9661  //
  9662  // - name: Name of the resource.
  9663  func (r *ProjectsLocationsFirewallEndpointAssociationsService) Delete(name string) *ProjectsLocationsFirewallEndpointAssociationsDeleteCall {
  9664  	c := &ProjectsLocationsFirewallEndpointAssociationsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9665  	c.name = name
  9666  	return c
  9667  }
  9668  
  9669  // RequestId sets the optional parameter "requestId": An optional request ID to
  9670  // identify requests. Specify a unique request ID so that if you must retry
  9671  // your request, the server will know to ignore the request if it has already
  9672  // been completed. The server will guarantee that for at least 60 minutes after
  9673  // the first request. For example, consider a situation where you make an
  9674  // initial request and the request times out. If you make the request again
  9675  // with the same request ID, the server can check if original operation with
  9676  // the same request ID was received, and if so, will ignore the second request.
  9677  // This prevents clients from accidentally creating duplicate commitments. The
  9678  // request ID must be a valid UUID with the exception that zero UUID is not
  9679  // supported (00000000-0000-0000-0000-000000000000).
  9680  func (c *ProjectsLocationsFirewallEndpointAssociationsDeleteCall) RequestId(requestId string) *ProjectsLocationsFirewallEndpointAssociationsDeleteCall {
  9681  	c.urlParams_.Set("requestId", requestId)
  9682  	return c
  9683  }
  9684  
  9685  // Fields allows partial responses to be retrieved. See
  9686  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9687  // details.
  9688  func (c *ProjectsLocationsFirewallEndpointAssociationsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsFirewallEndpointAssociationsDeleteCall {
  9689  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9690  	return c
  9691  }
  9692  
  9693  // Context sets the context to be used in this call's Do method.
  9694  func (c *ProjectsLocationsFirewallEndpointAssociationsDeleteCall) Context(ctx context.Context) *ProjectsLocationsFirewallEndpointAssociationsDeleteCall {
  9695  	c.ctx_ = ctx
  9696  	return c
  9697  }
  9698  
  9699  // Header returns a http.Header that can be modified by the caller to add
  9700  // headers to the request.
  9701  func (c *ProjectsLocationsFirewallEndpointAssociationsDeleteCall) Header() http.Header {
  9702  	if c.header_ == nil {
  9703  		c.header_ = make(http.Header)
  9704  	}
  9705  	return c.header_
  9706  }
  9707  
  9708  func (c *ProjectsLocationsFirewallEndpointAssociationsDeleteCall) doRequest(alt string) (*http.Response, error) {
  9709  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  9710  	var body io.Reader = nil
  9711  	c.urlParams_.Set("alt", alt)
  9712  	c.urlParams_.Set("prettyPrint", "false")
  9713  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  9714  	urls += "?" + c.urlParams_.Encode()
  9715  	req, err := http.NewRequest("DELETE", urls, body)
  9716  	if err != nil {
  9717  		return nil, err
  9718  	}
  9719  	req.Header = reqHeaders
  9720  	googleapi.Expand(req.URL, map[string]string{
  9721  		"name": c.name,
  9722  	})
  9723  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9724  }
  9725  
  9726  // Do executes the "networksecurity.projects.locations.firewallEndpointAssociations.delete" call.
  9727  // Any non-2xx status code is an error. Response headers are in either
  9728  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  9729  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  9730  // whether the returned error was because http.StatusNotModified was returned.
  9731  func (c *ProjectsLocationsFirewallEndpointAssociationsDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  9732  	gensupport.SetOptions(c.urlParams_, opts...)
  9733  	res, err := c.doRequest("json")
  9734  	if res != nil && res.StatusCode == http.StatusNotModified {
  9735  		if res.Body != nil {
  9736  			res.Body.Close()
  9737  		}
  9738  		return nil, gensupport.WrapError(&googleapi.Error{
  9739  			Code:   res.StatusCode,
  9740  			Header: res.Header,
  9741  		})
  9742  	}
  9743  	if err != nil {
  9744  		return nil, err
  9745  	}
  9746  	defer googleapi.CloseBody(res)
  9747  	if err := googleapi.CheckResponse(res); err != nil {
  9748  		return nil, gensupport.WrapError(err)
  9749  	}
  9750  	ret := &Operation{
  9751  		ServerResponse: googleapi.ServerResponse{
  9752  			Header:         res.Header,
  9753  			HTTPStatusCode: res.StatusCode,
  9754  		},
  9755  	}
  9756  	target := &ret
  9757  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9758  		return nil, err
  9759  	}
  9760  	return ret, nil
  9761  }
  9762  
  9763  type ProjectsLocationsFirewallEndpointAssociationsGetCall struct {
  9764  	s            *Service
  9765  	name         string
  9766  	urlParams_   gensupport.URLParams
  9767  	ifNoneMatch_ string
  9768  	ctx_         context.Context
  9769  	header_      http.Header
  9770  }
  9771  
  9772  // Get: Gets details of a single FirewallEndpointAssociation.
  9773  //
  9774  // - name: Name of the resource.
  9775  func (r *ProjectsLocationsFirewallEndpointAssociationsService) Get(name string) *ProjectsLocationsFirewallEndpointAssociationsGetCall {
  9776  	c := &ProjectsLocationsFirewallEndpointAssociationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9777  	c.name = name
  9778  	return c
  9779  }
  9780  
  9781  // Fields allows partial responses to be retrieved. See
  9782  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9783  // details.
  9784  func (c *ProjectsLocationsFirewallEndpointAssociationsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsFirewallEndpointAssociationsGetCall {
  9785  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9786  	return c
  9787  }
  9788  
  9789  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  9790  // object's ETag matches the given value. This is useful for getting updates
  9791  // only after the object has changed since the last request.
  9792  func (c *ProjectsLocationsFirewallEndpointAssociationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsFirewallEndpointAssociationsGetCall {
  9793  	c.ifNoneMatch_ = entityTag
  9794  	return c
  9795  }
  9796  
  9797  // Context sets the context to be used in this call's Do method.
  9798  func (c *ProjectsLocationsFirewallEndpointAssociationsGetCall) Context(ctx context.Context) *ProjectsLocationsFirewallEndpointAssociationsGetCall {
  9799  	c.ctx_ = ctx
  9800  	return c
  9801  }
  9802  
  9803  // Header returns a http.Header that can be modified by the caller to add
  9804  // headers to the request.
  9805  func (c *ProjectsLocationsFirewallEndpointAssociationsGetCall) Header() http.Header {
  9806  	if c.header_ == nil {
  9807  		c.header_ = make(http.Header)
  9808  	}
  9809  	return c.header_
  9810  }
  9811  
  9812  func (c *ProjectsLocationsFirewallEndpointAssociationsGetCall) doRequest(alt string) (*http.Response, error) {
  9813  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  9814  	if c.ifNoneMatch_ != "" {
  9815  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  9816  	}
  9817  	var body io.Reader = nil
  9818  	c.urlParams_.Set("alt", alt)
  9819  	c.urlParams_.Set("prettyPrint", "false")
  9820  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  9821  	urls += "?" + c.urlParams_.Encode()
  9822  	req, err := http.NewRequest("GET", urls, body)
  9823  	if err != nil {
  9824  		return nil, err
  9825  	}
  9826  	req.Header = reqHeaders
  9827  	googleapi.Expand(req.URL, map[string]string{
  9828  		"name": c.name,
  9829  	})
  9830  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9831  }
  9832  
  9833  // Do executes the "networksecurity.projects.locations.firewallEndpointAssociations.get" call.
  9834  // Any non-2xx status code is an error. Response headers are in either
  9835  // *FirewallEndpointAssociation.ServerResponse.Header or (if a response was
  9836  // returned at all) in error.(*googleapi.Error).Header. Use
  9837  // googleapi.IsNotModified to check whether the returned error was because
  9838  // http.StatusNotModified was returned.
  9839  func (c *ProjectsLocationsFirewallEndpointAssociationsGetCall) Do(opts ...googleapi.CallOption) (*FirewallEndpointAssociation, error) {
  9840  	gensupport.SetOptions(c.urlParams_, opts...)
  9841  	res, err := c.doRequest("json")
  9842  	if res != nil && res.StatusCode == http.StatusNotModified {
  9843  		if res.Body != nil {
  9844  			res.Body.Close()
  9845  		}
  9846  		return nil, gensupport.WrapError(&googleapi.Error{
  9847  			Code:   res.StatusCode,
  9848  			Header: res.Header,
  9849  		})
  9850  	}
  9851  	if err != nil {
  9852  		return nil, err
  9853  	}
  9854  	defer googleapi.CloseBody(res)
  9855  	if err := googleapi.CheckResponse(res); err != nil {
  9856  		return nil, gensupport.WrapError(err)
  9857  	}
  9858  	ret := &FirewallEndpointAssociation{
  9859  		ServerResponse: googleapi.ServerResponse{
  9860  			Header:         res.Header,
  9861  			HTTPStatusCode: res.StatusCode,
  9862  		},
  9863  	}
  9864  	target := &ret
  9865  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9866  		return nil, err
  9867  	}
  9868  	return ret, nil
  9869  }
  9870  
  9871  type ProjectsLocationsFirewallEndpointAssociationsListCall struct {
  9872  	s            *Service
  9873  	parent       string
  9874  	urlParams_   gensupport.URLParams
  9875  	ifNoneMatch_ string
  9876  	ctx_         context.Context
  9877  	header_      http.Header
  9878  }
  9879  
  9880  // List: Lists Associations in a given project and location.
  9881  //
  9882  // - parent: Parent value for ListAssociationsRequest.
  9883  func (r *ProjectsLocationsFirewallEndpointAssociationsService) List(parent string) *ProjectsLocationsFirewallEndpointAssociationsListCall {
  9884  	c := &ProjectsLocationsFirewallEndpointAssociationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9885  	c.parent = parent
  9886  	return c
  9887  }
  9888  
  9889  // Filter sets the optional parameter "filter": Filtering results
  9890  func (c *ProjectsLocationsFirewallEndpointAssociationsListCall) Filter(filter string) *ProjectsLocationsFirewallEndpointAssociationsListCall {
  9891  	c.urlParams_.Set("filter", filter)
  9892  	return c
  9893  }
  9894  
  9895  // OrderBy sets the optional parameter "orderBy": Hint for how to order the
  9896  // results
  9897  func (c *ProjectsLocationsFirewallEndpointAssociationsListCall) OrderBy(orderBy string) *ProjectsLocationsFirewallEndpointAssociationsListCall {
  9898  	c.urlParams_.Set("orderBy", orderBy)
  9899  	return c
  9900  }
  9901  
  9902  // PageSize sets the optional parameter "pageSize": Requested page size. Server
  9903  // may return fewer items than requested. If unspecified, server will pick an
  9904  // appropriate default.
  9905  func (c *ProjectsLocationsFirewallEndpointAssociationsListCall) PageSize(pageSize int64) *ProjectsLocationsFirewallEndpointAssociationsListCall {
  9906  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  9907  	return c
  9908  }
  9909  
  9910  // PageToken sets the optional parameter "pageToken": A token identifying a
  9911  // page of results the server should return.
  9912  func (c *ProjectsLocationsFirewallEndpointAssociationsListCall) PageToken(pageToken string) *ProjectsLocationsFirewallEndpointAssociationsListCall {
  9913  	c.urlParams_.Set("pageToken", pageToken)
  9914  	return c
  9915  }
  9916  
  9917  // Fields allows partial responses to be retrieved. See
  9918  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9919  // details.
  9920  func (c *ProjectsLocationsFirewallEndpointAssociationsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsFirewallEndpointAssociationsListCall {
  9921  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9922  	return c
  9923  }
  9924  
  9925  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  9926  // object's ETag matches the given value. This is useful for getting updates
  9927  // only after the object has changed since the last request.
  9928  func (c *ProjectsLocationsFirewallEndpointAssociationsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsFirewallEndpointAssociationsListCall {
  9929  	c.ifNoneMatch_ = entityTag
  9930  	return c
  9931  }
  9932  
  9933  // Context sets the context to be used in this call's Do method.
  9934  func (c *ProjectsLocationsFirewallEndpointAssociationsListCall) Context(ctx context.Context) *ProjectsLocationsFirewallEndpointAssociationsListCall {
  9935  	c.ctx_ = ctx
  9936  	return c
  9937  }
  9938  
  9939  // Header returns a http.Header that can be modified by the caller to add
  9940  // headers to the request.
  9941  func (c *ProjectsLocationsFirewallEndpointAssociationsListCall) Header() http.Header {
  9942  	if c.header_ == nil {
  9943  		c.header_ = make(http.Header)
  9944  	}
  9945  	return c.header_
  9946  }
  9947  
  9948  func (c *ProjectsLocationsFirewallEndpointAssociationsListCall) doRequest(alt string) (*http.Response, error) {
  9949  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  9950  	if c.ifNoneMatch_ != "" {
  9951  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  9952  	}
  9953  	var body io.Reader = nil
  9954  	c.urlParams_.Set("alt", alt)
  9955  	c.urlParams_.Set("prettyPrint", "false")
  9956  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/firewallEndpointAssociations")
  9957  	urls += "?" + c.urlParams_.Encode()
  9958  	req, err := http.NewRequest("GET", urls, body)
  9959  	if err != nil {
  9960  		return nil, err
  9961  	}
  9962  	req.Header = reqHeaders
  9963  	googleapi.Expand(req.URL, map[string]string{
  9964  		"parent": c.parent,
  9965  	})
  9966  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9967  }
  9968  
  9969  // Do executes the "networksecurity.projects.locations.firewallEndpointAssociations.list" call.
  9970  // Any non-2xx status code is an error. Response headers are in either
  9971  // *ListFirewallEndpointAssociationsResponse.ServerResponse.Header or (if a
  9972  // response was returned at all) in error.(*googleapi.Error).Header. Use
  9973  // googleapi.IsNotModified to check whether the returned error was because
  9974  // http.StatusNotModified was returned.
  9975  func (c *ProjectsLocationsFirewallEndpointAssociationsListCall) Do(opts ...googleapi.CallOption) (*ListFirewallEndpointAssociationsResponse, error) {
  9976  	gensupport.SetOptions(c.urlParams_, opts...)
  9977  	res, err := c.doRequest("json")
  9978  	if res != nil && res.StatusCode == http.StatusNotModified {
  9979  		if res.Body != nil {
  9980  			res.Body.Close()
  9981  		}
  9982  		return nil, gensupport.WrapError(&googleapi.Error{
  9983  			Code:   res.StatusCode,
  9984  			Header: res.Header,
  9985  		})
  9986  	}
  9987  	if err != nil {
  9988  		return nil, err
  9989  	}
  9990  	defer googleapi.CloseBody(res)
  9991  	if err := googleapi.CheckResponse(res); err != nil {
  9992  		return nil, gensupport.WrapError(err)
  9993  	}
  9994  	ret := &ListFirewallEndpointAssociationsResponse{
  9995  		ServerResponse: googleapi.ServerResponse{
  9996  			Header:         res.Header,
  9997  			HTTPStatusCode: res.StatusCode,
  9998  		},
  9999  	}
 10000  	target := &ret
 10001  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10002  		return nil, err
 10003  	}
 10004  	return ret, nil
 10005  }
 10006  
 10007  // Pages invokes f for each page of results.
 10008  // A non-nil error returned from f will halt the iteration.
 10009  // The provided context supersedes any context provided to the Context method.
 10010  func (c *ProjectsLocationsFirewallEndpointAssociationsListCall) Pages(ctx context.Context, f func(*ListFirewallEndpointAssociationsResponse) error) error {
 10011  	c.ctx_ = ctx
 10012  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 10013  	for {
 10014  		x, err := c.Do()
 10015  		if err != nil {
 10016  			return err
 10017  		}
 10018  		if err := f(x); err != nil {
 10019  			return err
 10020  		}
 10021  		if x.NextPageToken == "" {
 10022  			return nil
 10023  		}
 10024  		c.PageToken(x.NextPageToken)
 10025  	}
 10026  }
 10027  
 10028  type ProjectsLocationsFirewallEndpointAssociationsPatchCall struct {
 10029  	s                           *Service
 10030  	name                        string
 10031  	firewallendpointassociation *FirewallEndpointAssociation
 10032  	urlParams_                  gensupport.URLParams
 10033  	ctx_                        context.Context
 10034  	header_                     http.Header
 10035  }
 10036  
 10037  // Patch: Update a single FirewallEndpointAssociation.
 10038  //
 10039  // - name: Immutable. Identifier. name of resource.
 10040  func (r *ProjectsLocationsFirewallEndpointAssociationsService) Patch(name string, firewallendpointassociation *FirewallEndpointAssociation) *ProjectsLocationsFirewallEndpointAssociationsPatchCall {
 10041  	c := &ProjectsLocationsFirewallEndpointAssociationsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10042  	c.name = name
 10043  	c.firewallendpointassociation = firewallendpointassociation
 10044  	return c
 10045  }
 10046  
 10047  // RequestId sets the optional parameter "requestId": An optional request ID to
 10048  // identify requests. Specify a unique request ID so that if you must retry
 10049  // your request, the server will know to ignore the request if it has already
 10050  // been completed. The server will guarantee that for at least 60 minutes since
 10051  // the first request. For example, consider a situation where you make an
 10052  // initial request and the request times out. If you make the request again
 10053  // with the same request ID, the server can check if original operation with
 10054  // the same request ID was received, and if so, will ignore the second request.
 10055  // This prevents clients from accidentally creating duplicate commitments. The
 10056  // request ID must be a valid UUID with the exception that zero UUID is not
 10057  // supported (00000000-0000-0000-0000-000000000000).
 10058  func (c *ProjectsLocationsFirewallEndpointAssociationsPatchCall) RequestId(requestId string) *ProjectsLocationsFirewallEndpointAssociationsPatchCall {
 10059  	c.urlParams_.Set("requestId", requestId)
 10060  	return c
 10061  }
 10062  
 10063  // UpdateMask sets the optional parameter "updateMask": Required. Field mask is
 10064  // used to specify the fields to be overwritten in the Association resource by
 10065  // the update. The fields specified in the update_mask are relative to the
 10066  // resource, not the full request. A field will be overwritten if it is in the
 10067  // mask. If the user does not provide a mask then all fields will be
 10068  // overwritten.
 10069  func (c *ProjectsLocationsFirewallEndpointAssociationsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsFirewallEndpointAssociationsPatchCall {
 10070  	c.urlParams_.Set("updateMask", updateMask)
 10071  	return c
 10072  }
 10073  
 10074  // Fields allows partial responses to be retrieved. See
 10075  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10076  // details.
 10077  func (c *ProjectsLocationsFirewallEndpointAssociationsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsFirewallEndpointAssociationsPatchCall {
 10078  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10079  	return c
 10080  }
 10081  
 10082  // Context sets the context to be used in this call's Do method.
 10083  func (c *ProjectsLocationsFirewallEndpointAssociationsPatchCall) Context(ctx context.Context) *ProjectsLocationsFirewallEndpointAssociationsPatchCall {
 10084  	c.ctx_ = ctx
 10085  	return c
 10086  }
 10087  
 10088  // Header returns a http.Header that can be modified by the caller to add
 10089  // headers to the request.
 10090  func (c *ProjectsLocationsFirewallEndpointAssociationsPatchCall) Header() http.Header {
 10091  	if c.header_ == nil {
 10092  		c.header_ = make(http.Header)
 10093  	}
 10094  	return c.header_
 10095  }
 10096  
 10097  func (c *ProjectsLocationsFirewallEndpointAssociationsPatchCall) doRequest(alt string) (*http.Response, error) {
 10098  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 10099  	var body io.Reader = nil
 10100  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.firewallendpointassociation)
 10101  	if err != nil {
 10102  		return nil, err
 10103  	}
 10104  	c.urlParams_.Set("alt", alt)
 10105  	c.urlParams_.Set("prettyPrint", "false")
 10106  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 10107  	urls += "?" + c.urlParams_.Encode()
 10108  	req, err := http.NewRequest("PATCH", urls, body)
 10109  	if err != nil {
 10110  		return nil, err
 10111  	}
 10112  	req.Header = reqHeaders
 10113  	googleapi.Expand(req.URL, map[string]string{
 10114  		"name": c.name,
 10115  	})
 10116  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10117  }
 10118  
 10119  // Do executes the "networksecurity.projects.locations.firewallEndpointAssociations.patch" call.
 10120  // Any non-2xx status code is an error. Response headers are in either
 10121  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 10122  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 10123  // whether the returned error was because http.StatusNotModified was returned.
 10124  func (c *ProjectsLocationsFirewallEndpointAssociationsPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 10125  	gensupport.SetOptions(c.urlParams_, opts...)
 10126  	res, err := c.doRequest("json")
 10127  	if res != nil && res.StatusCode == http.StatusNotModified {
 10128  		if res.Body != nil {
 10129  			res.Body.Close()
 10130  		}
 10131  		return nil, gensupport.WrapError(&googleapi.Error{
 10132  			Code:   res.StatusCode,
 10133  			Header: res.Header,
 10134  		})
 10135  	}
 10136  	if err != nil {
 10137  		return nil, err
 10138  	}
 10139  	defer googleapi.CloseBody(res)
 10140  	if err := googleapi.CheckResponse(res); err != nil {
 10141  		return nil, gensupport.WrapError(err)
 10142  	}
 10143  	ret := &Operation{
 10144  		ServerResponse: googleapi.ServerResponse{
 10145  			Header:         res.Header,
 10146  			HTTPStatusCode: res.StatusCode,
 10147  		},
 10148  	}
 10149  	target := &ret
 10150  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10151  		return nil, err
 10152  	}
 10153  	return ret, nil
 10154  }
 10155  
 10156  type ProjectsLocationsGatewaySecurityPoliciesCreateCall struct {
 10157  	s                     *Service
 10158  	parent                string
 10159  	gatewaysecuritypolicy *GatewaySecurityPolicy
 10160  	urlParams_            gensupport.URLParams
 10161  	ctx_                  context.Context
 10162  	header_               http.Header
 10163  }
 10164  
 10165  // Create: Creates a new GatewaySecurityPolicy in a given project and location.
 10166  //
 10167  //   - parent: The parent resource of the GatewaySecurityPolicy. Must be in the
 10168  //     format `projects/{project}/locations/{location}`.
 10169  func (r *ProjectsLocationsGatewaySecurityPoliciesService) Create(parent string, gatewaysecuritypolicy *GatewaySecurityPolicy) *ProjectsLocationsGatewaySecurityPoliciesCreateCall {
 10170  	c := &ProjectsLocationsGatewaySecurityPoliciesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10171  	c.parent = parent
 10172  	c.gatewaysecuritypolicy = gatewaysecuritypolicy
 10173  	return c
 10174  }
 10175  
 10176  // GatewaySecurityPolicyId sets the optional parameter
 10177  // "gatewaySecurityPolicyId": Required. Short name of the GatewaySecurityPolicy
 10178  // resource to be created. This value should be 1-63 characters long,
 10179  // containing only letters, numbers, hyphens, and underscores, and should not
 10180  // start with a number. E.g. "gateway_security_policy1".
 10181  func (c *ProjectsLocationsGatewaySecurityPoliciesCreateCall) GatewaySecurityPolicyId(gatewaySecurityPolicyId string) *ProjectsLocationsGatewaySecurityPoliciesCreateCall {
 10182  	c.urlParams_.Set("gatewaySecurityPolicyId", gatewaySecurityPolicyId)
 10183  	return c
 10184  }
 10185  
 10186  // Fields allows partial responses to be retrieved. See
 10187  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10188  // details.
 10189  func (c *ProjectsLocationsGatewaySecurityPoliciesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsGatewaySecurityPoliciesCreateCall {
 10190  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10191  	return c
 10192  }
 10193  
 10194  // Context sets the context to be used in this call's Do method.
 10195  func (c *ProjectsLocationsGatewaySecurityPoliciesCreateCall) Context(ctx context.Context) *ProjectsLocationsGatewaySecurityPoliciesCreateCall {
 10196  	c.ctx_ = ctx
 10197  	return c
 10198  }
 10199  
 10200  // Header returns a http.Header that can be modified by the caller to add
 10201  // headers to the request.
 10202  func (c *ProjectsLocationsGatewaySecurityPoliciesCreateCall) Header() http.Header {
 10203  	if c.header_ == nil {
 10204  		c.header_ = make(http.Header)
 10205  	}
 10206  	return c.header_
 10207  }
 10208  
 10209  func (c *ProjectsLocationsGatewaySecurityPoliciesCreateCall) doRequest(alt string) (*http.Response, error) {
 10210  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 10211  	var body io.Reader = nil
 10212  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.gatewaysecuritypolicy)
 10213  	if err != nil {
 10214  		return nil, err
 10215  	}
 10216  	c.urlParams_.Set("alt", alt)
 10217  	c.urlParams_.Set("prettyPrint", "false")
 10218  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/gatewaySecurityPolicies")
 10219  	urls += "?" + c.urlParams_.Encode()
 10220  	req, err := http.NewRequest("POST", urls, body)
 10221  	if err != nil {
 10222  		return nil, err
 10223  	}
 10224  	req.Header = reqHeaders
 10225  	googleapi.Expand(req.URL, map[string]string{
 10226  		"parent": c.parent,
 10227  	})
 10228  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10229  }
 10230  
 10231  // Do executes the "networksecurity.projects.locations.gatewaySecurityPolicies.create" call.
 10232  // Any non-2xx status code is an error. Response headers are in either
 10233  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 10234  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 10235  // whether the returned error was because http.StatusNotModified was returned.
 10236  func (c *ProjectsLocationsGatewaySecurityPoliciesCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 10237  	gensupport.SetOptions(c.urlParams_, opts...)
 10238  	res, err := c.doRequest("json")
 10239  	if res != nil && res.StatusCode == http.StatusNotModified {
 10240  		if res.Body != nil {
 10241  			res.Body.Close()
 10242  		}
 10243  		return nil, gensupport.WrapError(&googleapi.Error{
 10244  			Code:   res.StatusCode,
 10245  			Header: res.Header,
 10246  		})
 10247  	}
 10248  	if err != nil {
 10249  		return nil, err
 10250  	}
 10251  	defer googleapi.CloseBody(res)
 10252  	if err := googleapi.CheckResponse(res); err != nil {
 10253  		return nil, gensupport.WrapError(err)
 10254  	}
 10255  	ret := &Operation{
 10256  		ServerResponse: googleapi.ServerResponse{
 10257  			Header:         res.Header,
 10258  			HTTPStatusCode: res.StatusCode,
 10259  		},
 10260  	}
 10261  	target := &ret
 10262  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10263  		return nil, err
 10264  	}
 10265  	return ret, nil
 10266  }
 10267  
 10268  type ProjectsLocationsGatewaySecurityPoliciesDeleteCall struct {
 10269  	s          *Service
 10270  	name       string
 10271  	urlParams_ gensupport.URLParams
 10272  	ctx_       context.Context
 10273  	header_    http.Header
 10274  }
 10275  
 10276  // Delete: Deletes a single GatewaySecurityPolicy.
 10277  //
 10278  //   - name: A name of the GatewaySecurityPolicy to delete. Must be in the format
 10279  //     `projects/{project}/locations/{location}/gatewaySecurityPolicies/*`.
 10280  func (r *ProjectsLocationsGatewaySecurityPoliciesService) Delete(name string) *ProjectsLocationsGatewaySecurityPoliciesDeleteCall {
 10281  	c := &ProjectsLocationsGatewaySecurityPoliciesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10282  	c.name = name
 10283  	return c
 10284  }
 10285  
 10286  // Fields allows partial responses to be retrieved. See
 10287  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10288  // details.
 10289  func (c *ProjectsLocationsGatewaySecurityPoliciesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsGatewaySecurityPoliciesDeleteCall {
 10290  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10291  	return c
 10292  }
 10293  
 10294  // Context sets the context to be used in this call's Do method.
 10295  func (c *ProjectsLocationsGatewaySecurityPoliciesDeleteCall) Context(ctx context.Context) *ProjectsLocationsGatewaySecurityPoliciesDeleteCall {
 10296  	c.ctx_ = ctx
 10297  	return c
 10298  }
 10299  
 10300  // Header returns a http.Header that can be modified by the caller to add
 10301  // headers to the request.
 10302  func (c *ProjectsLocationsGatewaySecurityPoliciesDeleteCall) Header() http.Header {
 10303  	if c.header_ == nil {
 10304  		c.header_ = make(http.Header)
 10305  	}
 10306  	return c.header_
 10307  }
 10308  
 10309  func (c *ProjectsLocationsGatewaySecurityPoliciesDeleteCall) doRequest(alt string) (*http.Response, error) {
 10310  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 10311  	var body io.Reader = nil
 10312  	c.urlParams_.Set("alt", alt)
 10313  	c.urlParams_.Set("prettyPrint", "false")
 10314  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 10315  	urls += "?" + c.urlParams_.Encode()
 10316  	req, err := http.NewRequest("DELETE", urls, body)
 10317  	if err != nil {
 10318  		return nil, err
 10319  	}
 10320  	req.Header = reqHeaders
 10321  	googleapi.Expand(req.URL, map[string]string{
 10322  		"name": c.name,
 10323  	})
 10324  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10325  }
 10326  
 10327  // Do executes the "networksecurity.projects.locations.gatewaySecurityPolicies.delete" call.
 10328  // Any non-2xx status code is an error. Response headers are in either
 10329  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 10330  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 10331  // whether the returned error was because http.StatusNotModified was returned.
 10332  func (c *ProjectsLocationsGatewaySecurityPoliciesDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 10333  	gensupport.SetOptions(c.urlParams_, opts...)
 10334  	res, err := c.doRequest("json")
 10335  	if res != nil && res.StatusCode == http.StatusNotModified {
 10336  		if res.Body != nil {
 10337  			res.Body.Close()
 10338  		}
 10339  		return nil, gensupport.WrapError(&googleapi.Error{
 10340  			Code:   res.StatusCode,
 10341  			Header: res.Header,
 10342  		})
 10343  	}
 10344  	if err != nil {
 10345  		return nil, err
 10346  	}
 10347  	defer googleapi.CloseBody(res)
 10348  	if err := googleapi.CheckResponse(res); err != nil {
 10349  		return nil, gensupport.WrapError(err)
 10350  	}
 10351  	ret := &Operation{
 10352  		ServerResponse: googleapi.ServerResponse{
 10353  			Header:         res.Header,
 10354  			HTTPStatusCode: res.StatusCode,
 10355  		},
 10356  	}
 10357  	target := &ret
 10358  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10359  		return nil, err
 10360  	}
 10361  	return ret, nil
 10362  }
 10363  
 10364  type ProjectsLocationsGatewaySecurityPoliciesGetCall struct {
 10365  	s            *Service
 10366  	name         string
 10367  	urlParams_   gensupport.URLParams
 10368  	ifNoneMatch_ string
 10369  	ctx_         context.Context
 10370  	header_      http.Header
 10371  }
 10372  
 10373  // Get: Gets details of a single GatewaySecurityPolicy.
 10374  //
 10375  //   - name: A name of the GatewaySecurityPolicy to get. Must be in the format
 10376  //     `projects/{project}/locations/{location}/gatewaySecurityPolicies/*`.
 10377  func (r *ProjectsLocationsGatewaySecurityPoliciesService) Get(name string) *ProjectsLocationsGatewaySecurityPoliciesGetCall {
 10378  	c := &ProjectsLocationsGatewaySecurityPoliciesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10379  	c.name = name
 10380  	return c
 10381  }
 10382  
 10383  // Fields allows partial responses to be retrieved. See
 10384  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10385  // details.
 10386  func (c *ProjectsLocationsGatewaySecurityPoliciesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsGatewaySecurityPoliciesGetCall {
 10387  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10388  	return c
 10389  }
 10390  
 10391  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 10392  // object's ETag matches the given value. This is useful for getting updates
 10393  // only after the object has changed since the last request.
 10394  func (c *ProjectsLocationsGatewaySecurityPoliciesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsGatewaySecurityPoliciesGetCall {
 10395  	c.ifNoneMatch_ = entityTag
 10396  	return c
 10397  }
 10398  
 10399  // Context sets the context to be used in this call's Do method.
 10400  func (c *ProjectsLocationsGatewaySecurityPoliciesGetCall) Context(ctx context.Context) *ProjectsLocationsGatewaySecurityPoliciesGetCall {
 10401  	c.ctx_ = ctx
 10402  	return c
 10403  }
 10404  
 10405  // Header returns a http.Header that can be modified by the caller to add
 10406  // headers to the request.
 10407  func (c *ProjectsLocationsGatewaySecurityPoliciesGetCall) Header() http.Header {
 10408  	if c.header_ == nil {
 10409  		c.header_ = make(http.Header)
 10410  	}
 10411  	return c.header_
 10412  }
 10413  
 10414  func (c *ProjectsLocationsGatewaySecurityPoliciesGetCall) doRequest(alt string) (*http.Response, error) {
 10415  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 10416  	if c.ifNoneMatch_ != "" {
 10417  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 10418  	}
 10419  	var body io.Reader = nil
 10420  	c.urlParams_.Set("alt", alt)
 10421  	c.urlParams_.Set("prettyPrint", "false")
 10422  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 10423  	urls += "?" + c.urlParams_.Encode()
 10424  	req, err := http.NewRequest("GET", urls, body)
 10425  	if err != nil {
 10426  		return nil, err
 10427  	}
 10428  	req.Header = reqHeaders
 10429  	googleapi.Expand(req.URL, map[string]string{
 10430  		"name": c.name,
 10431  	})
 10432  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10433  }
 10434  
 10435  // Do executes the "networksecurity.projects.locations.gatewaySecurityPolicies.get" call.
 10436  // Any non-2xx status code is an error. Response headers are in either
 10437  // *GatewaySecurityPolicy.ServerResponse.Header or (if a response was returned
 10438  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 10439  // check whether the returned error was because http.StatusNotModified was
 10440  // returned.
 10441  func (c *ProjectsLocationsGatewaySecurityPoliciesGetCall) Do(opts ...googleapi.CallOption) (*GatewaySecurityPolicy, error) {
 10442  	gensupport.SetOptions(c.urlParams_, opts...)
 10443  	res, err := c.doRequest("json")
 10444  	if res != nil && res.StatusCode == http.StatusNotModified {
 10445  		if res.Body != nil {
 10446  			res.Body.Close()
 10447  		}
 10448  		return nil, gensupport.WrapError(&googleapi.Error{
 10449  			Code:   res.StatusCode,
 10450  			Header: res.Header,
 10451  		})
 10452  	}
 10453  	if err != nil {
 10454  		return nil, err
 10455  	}
 10456  	defer googleapi.CloseBody(res)
 10457  	if err := googleapi.CheckResponse(res); err != nil {
 10458  		return nil, gensupport.WrapError(err)
 10459  	}
 10460  	ret := &GatewaySecurityPolicy{
 10461  		ServerResponse: googleapi.ServerResponse{
 10462  			Header:         res.Header,
 10463  			HTTPStatusCode: res.StatusCode,
 10464  		},
 10465  	}
 10466  	target := &ret
 10467  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10468  		return nil, err
 10469  	}
 10470  	return ret, nil
 10471  }
 10472  
 10473  type ProjectsLocationsGatewaySecurityPoliciesListCall struct {
 10474  	s            *Service
 10475  	parent       string
 10476  	urlParams_   gensupport.URLParams
 10477  	ifNoneMatch_ string
 10478  	ctx_         context.Context
 10479  	header_      http.Header
 10480  }
 10481  
 10482  // List: Lists GatewaySecurityPolicies in a given project and location.
 10483  //
 10484  //   - parent: The project and location from which the GatewaySecurityPolicies
 10485  //     should be listed, specified in the format
 10486  //     `projects/{project}/locations/{location}`.
 10487  func (r *ProjectsLocationsGatewaySecurityPoliciesService) List(parent string) *ProjectsLocationsGatewaySecurityPoliciesListCall {
 10488  	c := &ProjectsLocationsGatewaySecurityPoliciesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10489  	c.parent = parent
 10490  	return c
 10491  }
 10492  
 10493  // PageSize sets the optional parameter "pageSize": Maximum number of
 10494  // GatewaySecurityPolicies to return per call.
 10495  func (c *ProjectsLocationsGatewaySecurityPoliciesListCall) PageSize(pageSize int64) *ProjectsLocationsGatewaySecurityPoliciesListCall {
 10496  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 10497  	return c
 10498  }
 10499  
 10500  // PageToken sets the optional parameter "pageToken": The value returned by the
 10501  // last 'ListGatewaySecurityPoliciesResponse' Indicates that this is a
 10502  // continuation of a prior 'ListGatewaySecurityPolicies' call, and that the
 10503  // system should return the next page of data.
 10504  func (c *ProjectsLocationsGatewaySecurityPoliciesListCall) PageToken(pageToken string) *ProjectsLocationsGatewaySecurityPoliciesListCall {
 10505  	c.urlParams_.Set("pageToken", pageToken)
 10506  	return c
 10507  }
 10508  
 10509  // Fields allows partial responses to be retrieved. See
 10510  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10511  // details.
 10512  func (c *ProjectsLocationsGatewaySecurityPoliciesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsGatewaySecurityPoliciesListCall {
 10513  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10514  	return c
 10515  }
 10516  
 10517  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 10518  // object's ETag matches the given value. This is useful for getting updates
 10519  // only after the object has changed since the last request.
 10520  func (c *ProjectsLocationsGatewaySecurityPoliciesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsGatewaySecurityPoliciesListCall {
 10521  	c.ifNoneMatch_ = entityTag
 10522  	return c
 10523  }
 10524  
 10525  // Context sets the context to be used in this call's Do method.
 10526  func (c *ProjectsLocationsGatewaySecurityPoliciesListCall) Context(ctx context.Context) *ProjectsLocationsGatewaySecurityPoliciesListCall {
 10527  	c.ctx_ = ctx
 10528  	return c
 10529  }
 10530  
 10531  // Header returns a http.Header that can be modified by the caller to add
 10532  // headers to the request.
 10533  func (c *ProjectsLocationsGatewaySecurityPoliciesListCall) Header() http.Header {
 10534  	if c.header_ == nil {
 10535  		c.header_ = make(http.Header)
 10536  	}
 10537  	return c.header_
 10538  }
 10539  
 10540  func (c *ProjectsLocationsGatewaySecurityPoliciesListCall) doRequest(alt string) (*http.Response, error) {
 10541  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 10542  	if c.ifNoneMatch_ != "" {
 10543  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 10544  	}
 10545  	var body io.Reader = nil
 10546  	c.urlParams_.Set("alt", alt)
 10547  	c.urlParams_.Set("prettyPrint", "false")
 10548  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/gatewaySecurityPolicies")
 10549  	urls += "?" + c.urlParams_.Encode()
 10550  	req, err := http.NewRequest("GET", urls, body)
 10551  	if err != nil {
 10552  		return nil, err
 10553  	}
 10554  	req.Header = reqHeaders
 10555  	googleapi.Expand(req.URL, map[string]string{
 10556  		"parent": c.parent,
 10557  	})
 10558  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10559  }
 10560  
 10561  // Do executes the "networksecurity.projects.locations.gatewaySecurityPolicies.list" call.
 10562  // Any non-2xx status code is an error. Response headers are in either
 10563  // *ListGatewaySecurityPoliciesResponse.ServerResponse.Header or (if a response
 10564  // was returned at all) in error.(*googleapi.Error).Header. Use
 10565  // googleapi.IsNotModified to check whether the returned error was because
 10566  // http.StatusNotModified was returned.
 10567  func (c *ProjectsLocationsGatewaySecurityPoliciesListCall) Do(opts ...googleapi.CallOption) (*ListGatewaySecurityPoliciesResponse, error) {
 10568  	gensupport.SetOptions(c.urlParams_, opts...)
 10569  	res, err := c.doRequest("json")
 10570  	if res != nil && res.StatusCode == http.StatusNotModified {
 10571  		if res.Body != nil {
 10572  			res.Body.Close()
 10573  		}
 10574  		return nil, gensupport.WrapError(&googleapi.Error{
 10575  			Code:   res.StatusCode,
 10576  			Header: res.Header,
 10577  		})
 10578  	}
 10579  	if err != nil {
 10580  		return nil, err
 10581  	}
 10582  	defer googleapi.CloseBody(res)
 10583  	if err := googleapi.CheckResponse(res); err != nil {
 10584  		return nil, gensupport.WrapError(err)
 10585  	}
 10586  	ret := &ListGatewaySecurityPoliciesResponse{
 10587  		ServerResponse: googleapi.ServerResponse{
 10588  			Header:         res.Header,
 10589  			HTTPStatusCode: res.StatusCode,
 10590  		},
 10591  	}
 10592  	target := &ret
 10593  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10594  		return nil, err
 10595  	}
 10596  	return ret, nil
 10597  }
 10598  
 10599  // Pages invokes f for each page of results.
 10600  // A non-nil error returned from f will halt the iteration.
 10601  // The provided context supersedes any context provided to the Context method.
 10602  func (c *ProjectsLocationsGatewaySecurityPoliciesListCall) Pages(ctx context.Context, f func(*ListGatewaySecurityPoliciesResponse) error) error {
 10603  	c.ctx_ = ctx
 10604  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 10605  	for {
 10606  		x, err := c.Do()
 10607  		if err != nil {
 10608  			return err
 10609  		}
 10610  		if err := f(x); err != nil {
 10611  			return err
 10612  		}
 10613  		if x.NextPageToken == "" {
 10614  			return nil
 10615  		}
 10616  		c.PageToken(x.NextPageToken)
 10617  	}
 10618  }
 10619  
 10620  type ProjectsLocationsGatewaySecurityPoliciesPatchCall struct {
 10621  	s                     *Service
 10622  	name                  string
 10623  	gatewaysecuritypolicy *GatewaySecurityPolicy
 10624  	urlParams_            gensupport.URLParams
 10625  	ctx_                  context.Context
 10626  	header_               http.Header
 10627  }
 10628  
 10629  // Patch: Updates the parameters of a single GatewaySecurityPolicy.
 10630  //
 10631  //   - name: Name of the resource. Name is of the form
 10632  //     projects/{project}/locations/{location}/gatewaySecurityPolicies/{gateway_se
 10633  //     curity_policy} gateway_security_policy should match the pattern:(^a-z
 10634  //     ([a-z0-9-]{0,61}[a-z0-9])?$).
 10635  func (r *ProjectsLocationsGatewaySecurityPoliciesService) Patch(name string, gatewaysecuritypolicy *GatewaySecurityPolicy) *ProjectsLocationsGatewaySecurityPoliciesPatchCall {
 10636  	c := &ProjectsLocationsGatewaySecurityPoliciesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10637  	c.name = name
 10638  	c.gatewaysecuritypolicy = gatewaysecuritypolicy
 10639  	return c
 10640  }
 10641  
 10642  // UpdateMask sets the optional parameter "updateMask": Field mask is used to
 10643  // specify the fields to be overwritten in the GatewaySecurityPolicy resource
 10644  // by the update. The fields specified in the update_mask are relative to the
 10645  // resource, not the full request. A field will be overwritten if it is in the
 10646  // mask. If the user does not provide a mask then all fields will be
 10647  // overwritten.
 10648  func (c *ProjectsLocationsGatewaySecurityPoliciesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsGatewaySecurityPoliciesPatchCall {
 10649  	c.urlParams_.Set("updateMask", updateMask)
 10650  	return c
 10651  }
 10652  
 10653  // Fields allows partial responses to be retrieved. See
 10654  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10655  // details.
 10656  func (c *ProjectsLocationsGatewaySecurityPoliciesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsGatewaySecurityPoliciesPatchCall {
 10657  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10658  	return c
 10659  }
 10660  
 10661  // Context sets the context to be used in this call's Do method.
 10662  func (c *ProjectsLocationsGatewaySecurityPoliciesPatchCall) Context(ctx context.Context) *ProjectsLocationsGatewaySecurityPoliciesPatchCall {
 10663  	c.ctx_ = ctx
 10664  	return c
 10665  }
 10666  
 10667  // Header returns a http.Header that can be modified by the caller to add
 10668  // headers to the request.
 10669  func (c *ProjectsLocationsGatewaySecurityPoliciesPatchCall) Header() http.Header {
 10670  	if c.header_ == nil {
 10671  		c.header_ = make(http.Header)
 10672  	}
 10673  	return c.header_
 10674  }
 10675  
 10676  func (c *ProjectsLocationsGatewaySecurityPoliciesPatchCall) doRequest(alt string) (*http.Response, error) {
 10677  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 10678  	var body io.Reader = nil
 10679  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.gatewaysecuritypolicy)
 10680  	if err != nil {
 10681  		return nil, err
 10682  	}
 10683  	c.urlParams_.Set("alt", alt)
 10684  	c.urlParams_.Set("prettyPrint", "false")
 10685  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 10686  	urls += "?" + c.urlParams_.Encode()
 10687  	req, err := http.NewRequest("PATCH", urls, body)
 10688  	if err != nil {
 10689  		return nil, err
 10690  	}
 10691  	req.Header = reqHeaders
 10692  	googleapi.Expand(req.URL, map[string]string{
 10693  		"name": c.name,
 10694  	})
 10695  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10696  }
 10697  
 10698  // Do executes the "networksecurity.projects.locations.gatewaySecurityPolicies.patch" call.
 10699  // Any non-2xx status code is an error. Response headers are in either
 10700  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 10701  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 10702  // whether the returned error was because http.StatusNotModified was returned.
 10703  func (c *ProjectsLocationsGatewaySecurityPoliciesPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 10704  	gensupport.SetOptions(c.urlParams_, opts...)
 10705  	res, err := c.doRequest("json")
 10706  	if res != nil && res.StatusCode == http.StatusNotModified {
 10707  		if res.Body != nil {
 10708  			res.Body.Close()
 10709  		}
 10710  		return nil, gensupport.WrapError(&googleapi.Error{
 10711  			Code:   res.StatusCode,
 10712  			Header: res.Header,
 10713  		})
 10714  	}
 10715  	if err != nil {
 10716  		return nil, err
 10717  	}
 10718  	defer googleapi.CloseBody(res)
 10719  	if err := googleapi.CheckResponse(res); err != nil {
 10720  		return nil, gensupport.WrapError(err)
 10721  	}
 10722  	ret := &Operation{
 10723  		ServerResponse: googleapi.ServerResponse{
 10724  			Header:         res.Header,
 10725  			HTTPStatusCode: res.StatusCode,
 10726  		},
 10727  	}
 10728  	target := &ret
 10729  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10730  		return nil, err
 10731  	}
 10732  	return ret, nil
 10733  }
 10734  
 10735  type ProjectsLocationsGatewaySecurityPoliciesRulesCreateCall struct {
 10736  	s                         *Service
 10737  	parent                    string
 10738  	gatewaysecuritypolicyrule *GatewaySecurityPolicyRule
 10739  	urlParams_                gensupport.URLParams
 10740  	ctx_                      context.Context
 10741  	header_                   http.Header
 10742  }
 10743  
 10744  // Create: Creates a new GatewaySecurityPolicy in a given project and location.
 10745  //
 10746  //   - parent: The parent where this rule will be created. Format :
 10747  //     projects/{project}/location/{location}/gatewaySecurityPolicies/*.
 10748  func (r *ProjectsLocationsGatewaySecurityPoliciesRulesService) Create(parent string, gatewaysecuritypolicyrule *GatewaySecurityPolicyRule) *ProjectsLocationsGatewaySecurityPoliciesRulesCreateCall {
 10749  	c := &ProjectsLocationsGatewaySecurityPoliciesRulesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10750  	c.parent = parent
 10751  	c.gatewaysecuritypolicyrule = gatewaysecuritypolicyrule
 10752  	return c
 10753  }
 10754  
 10755  // GatewaySecurityPolicyRuleId sets the optional parameter
 10756  // "gatewaySecurityPolicyRuleId": The ID to use for the rule, which will become
 10757  // the final component of the rule's resource name. This value should be 4-63
 10758  // characters, and valid characters are /a-z-/.
 10759  func (c *ProjectsLocationsGatewaySecurityPoliciesRulesCreateCall) GatewaySecurityPolicyRuleId(gatewaySecurityPolicyRuleId string) *ProjectsLocationsGatewaySecurityPoliciesRulesCreateCall {
 10760  	c.urlParams_.Set("gatewaySecurityPolicyRuleId", gatewaySecurityPolicyRuleId)
 10761  	return c
 10762  }
 10763  
 10764  // Fields allows partial responses to be retrieved. See
 10765  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10766  // details.
 10767  func (c *ProjectsLocationsGatewaySecurityPoliciesRulesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsGatewaySecurityPoliciesRulesCreateCall {
 10768  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10769  	return c
 10770  }
 10771  
 10772  // Context sets the context to be used in this call's Do method.
 10773  func (c *ProjectsLocationsGatewaySecurityPoliciesRulesCreateCall) Context(ctx context.Context) *ProjectsLocationsGatewaySecurityPoliciesRulesCreateCall {
 10774  	c.ctx_ = ctx
 10775  	return c
 10776  }
 10777  
 10778  // Header returns a http.Header that can be modified by the caller to add
 10779  // headers to the request.
 10780  func (c *ProjectsLocationsGatewaySecurityPoliciesRulesCreateCall) Header() http.Header {
 10781  	if c.header_ == nil {
 10782  		c.header_ = make(http.Header)
 10783  	}
 10784  	return c.header_
 10785  }
 10786  
 10787  func (c *ProjectsLocationsGatewaySecurityPoliciesRulesCreateCall) doRequest(alt string) (*http.Response, error) {
 10788  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 10789  	var body io.Reader = nil
 10790  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.gatewaysecuritypolicyrule)
 10791  	if err != nil {
 10792  		return nil, err
 10793  	}
 10794  	c.urlParams_.Set("alt", alt)
 10795  	c.urlParams_.Set("prettyPrint", "false")
 10796  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/rules")
 10797  	urls += "?" + c.urlParams_.Encode()
 10798  	req, err := http.NewRequest("POST", urls, body)
 10799  	if err != nil {
 10800  		return nil, err
 10801  	}
 10802  	req.Header = reqHeaders
 10803  	googleapi.Expand(req.URL, map[string]string{
 10804  		"parent": c.parent,
 10805  	})
 10806  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10807  }
 10808  
 10809  // Do executes the "networksecurity.projects.locations.gatewaySecurityPolicies.rules.create" call.
 10810  // Any non-2xx status code is an error. Response headers are in either
 10811  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 10812  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 10813  // whether the returned error was because http.StatusNotModified was returned.
 10814  func (c *ProjectsLocationsGatewaySecurityPoliciesRulesCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 10815  	gensupport.SetOptions(c.urlParams_, opts...)
 10816  	res, err := c.doRequest("json")
 10817  	if res != nil && res.StatusCode == http.StatusNotModified {
 10818  		if res.Body != nil {
 10819  			res.Body.Close()
 10820  		}
 10821  		return nil, gensupport.WrapError(&googleapi.Error{
 10822  			Code:   res.StatusCode,
 10823  			Header: res.Header,
 10824  		})
 10825  	}
 10826  	if err != nil {
 10827  		return nil, err
 10828  	}
 10829  	defer googleapi.CloseBody(res)
 10830  	if err := googleapi.CheckResponse(res); err != nil {
 10831  		return nil, gensupport.WrapError(err)
 10832  	}
 10833  	ret := &Operation{
 10834  		ServerResponse: googleapi.ServerResponse{
 10835  			Header:         res.Header,
 10836  			HTTPStatusCode: res.StatusCode,
 10837  		},
 10838  	}
 10839  	target := &ret
 10840  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10841  		return nil, err
 10842  	}
 10843  	return ret, nil
 10844  }
 10845  
 10846  type ProjectsLocationsGatewaySecurityPoliciesRulesDeleteCall struct {
 10847  	s          *Service
 10848  	name       string
 10849  	urlParams_ gensupport.URLParams
 10850  	ctx_       context.Context
 10851  	header_    http.Header
 10852  }
 10853  
 10854  // Delete: Deletes a single GatewaySecurityPolicyRule.
 10855  //
 10856  //   - name: A name of the GatewaySecurityPolicyRule to delete. Must be in the
 10857  //     format
 10858  //     `projects/{project}/locations/{location}/gatewaySecurityPolicies/{gatewaySe
 10859  //     curityPolicy}/rules/*`.
 10860  func (r *ProjectsLocationsGatewaySecurityPoliciesRulesService) Delete(name string) *ProjectsLocationsGatewaySecurityPoliciesRulesDeleteCall {
 10861  	c := &ProjectsLocationsGatewaySecurityPoliciesRulesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10862  	c.name = name
 10863  	return c
 10864  }
 10865  
 10866  // Fields allows partial responses to be retrieved. See
 10867  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10868  // details.
 10869  func (c *ProjectsLocationsGatewaySecurityPoliciesRulesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsGatewaySecurityPoliciesRulesDeleteCall {
 10870  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10871  	return c
 10872  }
 10873  
 10874  // Context sets the context to be used in this call's Do method.
 10875  func (c *ProjectsLocationsGatewaySecurityPoliciesRulesDeleteCall) Context(ctx context.Context) *ProjectsLocationsGatewaySecurityPoliciesRulesDeleteCall {
 10876  	c.ctx_ = ctx
 10877  	return c
 10878  }
 10879  
 10880  // Header returns a http.Header that can be modified by the caller to add
 10881  // headers to the request.
 10882  func (c *ProjectsLocationsGatewaySecurityPoliciesRulesDeleteCall) Header() http.Header {
 10883  	if c.header_ == nil {
 10884  		c.header_ = make(http.Header)
 10885  	}
 10886  	return c.header_
 10887  }
 10888  
 10889  func (c *ProjectsLocationsGatewaySecurityPoliciesRulesDeleteCall) doRequest(alt string) (*http.Response, error) {
 10890  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 10891  	var body io.Reader = nil
 10892  	c.urlParams_.Set("alt", alt)
 10893  	c.urlParams_.Set("prettyPrint", "false")
 10894  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 10895  	urls += "?" + c.urlParams_.Encode()
 10896  	req, err := http.NewRequest("DELETE", urls, body)
 10897  	if err != nil {
 10898  		return nil, err
 10899  	}
 10900  	req.Header = reqHeaders
 10901  	googleapi.Expand(req.URL, map[string]string{
 10902  		"name": c.name,
 10903  	})
 10904  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10905  }
 10906  
 10907  // Do executes the "networksecurity.projects.locations.gatewaySecurityPolicies.rules.delete" call.
 10908  // Any non-2xx status code is an error. Response headers are in either
 10909  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 10910  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 10911  // whether the returned error was because http.StatusNotModified was returned.
 10912  func (c *ProjectsLocationsGatewaySecurityPoliciesRulesDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 10913  	gensupport.SetOptions(c.urlParams_, opts...)
 10914  	res, err := c.doRequest("json")
 10915  	if res != nil && res.StatusCode == http.StatusNotModified {
 10916  		if res.Body != nil {
 10917  			res.Body.Close()
 10918  		}
 10919  		return nil, gensupport.WrapError(&googleapi.Error{
 10920  			Code:   res.StatusCode,
 10921  			Header: res.Header,
 10922  		})
 10923  	}
 10924  	if err != nil {
 10925  		return nil, err
 10926  	}
 10927  	defer googleapi.CloseBody(res)
 10928  	if err := googleapi.CheckResponse(res); err != nil {
 10929  		return nil, gensupport.WrapError(err)
 10930  	}
 10931  	ret := &Operation{
 10932  		ServerResponse: googleapi.ServerResponse{
 10933  			Header:         res.Header,
 10934  			HTTPStatusCode: res.StatusCode,
 10935  		},
 10936  	}
 10937  	target := &ret
 10938  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10939  		return nil, err
 10940  	}
 10941  	return ret, nil
 10942  }
 10943  
 10944  type ProjectsLocationsGatewaySecurityPoliciesRulesGetCall struct {
 10945  	s            *Service
 10946  	name         string
 10947  	urlParams_   gensupport.URLParams
 10948  	ifNoneMatch_ string
 10949  	ctx_         context.Context
 10950  	header_      http.Header
 10951  }
 10952  
 10953  // Get: Gets details of a single GatewaySecurityPolicyRule.
 10954  //
 10955  //   - name: The name of the GatewaySecurityPolicyRule to retrieve. Format:
 10956  //     projects/{project}/location/{location}/gatewaySecurityPolicies/*/rules/*.
 10957  func (r *ProjectsLocationsGatewaySecurityPoliciesRulesService) Get(name string) *ProjectsLocationsGatewaySecurityPoliciesRulesGetCall {
 10958  	c := &ProjectsLocationsGatewaySecurityPoliciesRulesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10959  	c.name = name
 10960  	return c
 10961  }
 10962  
 10963  // Fields allows partial responses to be retrieved. See
 10964  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10965  // details.
 10966  func (c *ProjectsLocationsGatewaySecurityPoliciesRulesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsGatewaySecurityPoliciesRulesGetCall {
 10967  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10968  	return c
 10969  }
 10970  
 10971  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 10972  // object's ETag matches the given value. This is useful for getting updates
 10973  // only after the object has changed since the last request.
 10974  func (c *ProjectsLocationsGatewaySecurityPoliciesRulesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsGatewaySecurityPoliciesRulesGetCall {
 10975  	c.ifNoneMatch_ = entityTag
 10976  	return c
 10977  }
 10978  
 10979  // Context sets the context to be used in this call's Do method.
 10980  func (c *ProjectsLocationsGatewaySecurityPoliciesRulesGetCall) Context(ctx context.Context) *ProjectsLocationsGatewaySecurityPoliciesRulesGetCall {
 10981  	c.ctx_ = ctx
 10982  	return c
 10983  }
 10984  
 10985  // Header returns a http.Header that can be modified by the caller to add
 10986  // headers to the request.
 10987  func (c *ProjectsLocationsGatewaySecurityPoliciesRulesGetCall) Header() http.Header {
 10988  	if c.header_ == nil {
 10989  		c.header_ = make(http.Header)
 10990  	}
 10991  	return c.header_
 10992  }
 10993  
 10994  func (c *ProjectsLocationsGatewaySecurityPoliciesRulesGetCall) doRequest(alt string) (*http.Response, error) {
 10995  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 10996  	if c.ifNoneMatch_ != "" {
 10997  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 10998  	}
 10999  	var body io.Reader = nil
 11000  	c.urlParams_.Set("alt", alt)
 11001  	c.urlParams_.Set("prettyPrint", "false")
 11002  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 11003  	urls += "?" + c.urlParams_.Encode()
 11004  	req, err := http.NewRequest("GET", urls, body)
 11005  	if err != nil {
 11006  		return nil, err
 11007  	}
 11008  	req.Header = reqHeaders
 11009  	googleapi.Expand(req.URL, map[string]string{
 11010  		"name": c.name,
 11011  	})
 11012  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11013  }
 11014  
 11015  // Do executes the "networksecurity.projects.locations.gatewaySecurityPolicies.rules.get" call.
 11016  // Any non-2xx status code is an error. Response headers are in either
 11017  // *GatewaySecurityPolicyRule.ServerResponse.Header or (if a response was
 11018  // returned at all) in error.(*googleapi.Error).Header. Use
 11019  // googleapi.IsNotModified to check whether the returned error was because
 11020  // http.StatusNotModified was returned.
 11021  func (c *ProjectsLocationsGatewaySecurityPoliciesRulesGetCall) Do(opts ...googleapi.CallOption) (*GatewaySecurityPolicyRule, error) {
 11022  	gensupport.SetOptions(c.urlParams_, opts...)
 11023  	res, err := c.doRequest("json")
 11024  	if res != nil && res.StatusCode == http.StatusNotModified {
 11025  		if res.Body != nil {
 11026  			res.Body.Close()
 11027  		}
 11028  		return nil, gensupport.WrapError(&googleapi.Error{
 11029  			Code:   res.StatusCode,
 11030  			Header: res.Header,
 11031  		})
 11032  	}
 11033  	if err != nil {
 11034  		return nil, err
 11035  	}
 11036  	defer googleapi.CloseBody(res)
 11037  	if err := googleapi.CheckResponse(res); err != nil {
 11038  		return nil, gensupport.WrapError(err)
 11039  	}
 11040  	ret := &GatewaySecurityPolicyRule{
 11041  		ServerResponse: googleapi.ServerResponse{
 11042  			Header:         res.Header,
 11043  			HTTPStatusCode: res.StatusCode,
 11044  		},
 11045  	}
 11046  	target := &ret
 11047  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11048  		return nil, err
 11049  	}
 11050  	return ret, nil
 11051  }
 11052  
 11053  type ProjectsLocationsGatewaySecurityPoliciesRulesListCall struct {
 11054  	s            *Service
 11055  	parent       string
 11056  	urlParams_   gensupport.URLParams
 11057  	ifNoneMatch_ string
 11058  	ctx_         context.Context
 11059  	header_      http.Header
 11060  }
 11061  
 11062  // List: Lists GatewaySecurityPolicyRules in a given project and location.
 11063  //
 11064  //   - parent: The project, location and GatewaySecurityPolicy from which the
 11065  //     GatewaySecurityPolicyRules should be listed, specified in the format
 11066  //     `projects/{project}/locations/{location}/gatewaySecurityPolicies/{gatewaySe
 11067  //     curityPolicy}`.
 11068  func (r *ProjectsLocationsGatewaySecurityPoliciesRulesService) List(parent string) *ProjectsLocationsGatewaySecurityPoliciesRulesListCall {
 11069  	c := &ProjectsLocationsGatewaySecurityPoliciesRulesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11070  	c.parent = parent
 11071  	return c
 11072  }
 11073  
 11074  // PageSize sets the optional parameter "pageSize": Maximum number of
 11075  // GatewaySecurityPolicyRules to return per call.
 11076  func (c *ProjectsLocationsGatewaySecurityPoliciesRulesListCall) PageSize(pageSize int64) *ProjectsLocationsGatewaySecurityPoliciesRulesListCall {
 11077  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 11078  	return c
 11079  }
 11080  
 11081  // PageToken sets the optional parameter "pageToken": The value returned by the
 11082  // last 'ListGatewaySecurityPolicyRulesResponse' Indicates that this is a
 11083  // continuation of a prior 'ListGatewaySecurityPolicyRules' call, and that the
 11084  // system should return the next page of data.
 11085  func (c *ProjectsLocationsGatewaySecurityPoliciesRulesListCall) PageToken(pageToken string) *ProjectsLocationsGatewaySecurityPoliciesRulesListCall {
 11086  	c.urlParams_.Set("pageToken", pageToken)
 11087  	return c
 11088  }
 11089  
 11090  // Fields allows partial responses to be retrieved. See
 11091  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11092  // details.
 11093  func (c *ProjectsLocationsGatewaySecurityPoliciesRulesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsGatewaySecurityPoliciesRulesListCall {
 11094  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11095  	return c
 11096  }
 11097  
 11098  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 11099  // object's ETag matches the given value. This is useful for getting updates
 11100  // only after the object has changed since the last request.
 11101  func (c *ProjectsLocationsGatewaySecurityPoliciesRulesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsGatewaySecurityPoliciesRulesListCall {
 11102  	c.ifNoneMatch_ = entityTag
 11103  	return c
 11104  }
 11105  
 11106  // Context sets the context to be used in this call's Do method.
 11107  func (c *ProjectsLocationsGatewaySecurityPoliciesRulesListCall) Context(ctx context.Context) *ProjectsLocationsGatewaySecurityPoliciesRulesListCall {
 11108  	c.ctx_ = ctx
 11109  	return c
 11110  }
 11111  
 11112  // Header returns a http.Header that can be modified by the caller to add
 11113  // headers to the request.
 11114  func (c *ProjectsLocationsGatewaySecurityPoliciesRulesListCall) Header() http.Header {
 11115  	if c.header_ == nil {
 11116  		c.header_ = make(http.Header)
 11117  	}
 11118  	return c.header_
 11119  }
 11120  
 11121  func (c *ProjectsLocationsGatewaySecurityPoliciesRulesListCall) doRequest(alt string) (*http.Response, error) {
 11122  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 11123  	if c.ifNoneMatch_ != "" {
 11124  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 11125  	}
 11126  	var body io.Reader = nil
 11127  	c.urlParams_.Set("alt", alt)
 11128  	c.urlParams_.Set("prettyPrint", "false")
 11129  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/rules")
 11130  	urls += "?" + c.urlParams_.Encode()
 11131  	req, err := http.NewRequest("GET", urls, body)
 11132  	if err != nil {
 11133  		return nil, err
 11134  	}
 11135  	req.Header = reqHeaders
 11136  	googleapi.Expand(req.URL, map[string]string{
 11137  		"parent": c.parent,
 11138  	})
 11139  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11140  }
 11141  
 11142  // Do executes the "networksecurity.projects.locations.gatewaySecurityPolicies.rules.list" call.
 11143  // Any non-2xx status code is an error. Response headers are in either
 11144  // *ListGatewaySecurityPolicyRulesResponse.ServerResponse.Header or (if a
 11145  // response was returned at all) in error.(*googleapi.Error).Header. Use
 11146  // googleapi.IsNotModified to check whether the returned error was because
 11147  // http.StatusNotModified was returned.
 11148  func (c *ProjectsLocationsGatewaySecurityPoliciesRulesListCall) Do(opts ...googleapi.CallOption) (*ListGatewaySecurityPolicyRulesResponse, error) {
 11149  	gensupport.SetOptions(c.urlParams_, opts...)
 11150  	res, err := c.doRequest("json")
 11151  	if res != nil && res.StatusCode == http.StatusNotModified {
 11152  		if res.Body != nil {
 11153  			res.Body.Close()
 11154  		}
 11155  		return nil, gensupport.WrapError(&googleapi.Error{
 11156  			Code:   res.StatusCode,
 11157  			Header: res.Header,
 11158  		})
 11159  	}
 11160  	if err != nil {
 11161  		return nil, err
 11162  	}
 11163  	defer googleapi.CloseBody(res)
 11164  	if err := googleapi.CheckResponse(res); err != nil {
 11165  		return nil, gensupport.WrapError(err)
 11166  	}
 11167  	ret := &ListGatewaySecurityPolicyRulesResponse{
 11168  		ServerResponse: googleapi.ServerResponse{
 11169  			Header:         res.Header,
 11170  			HTTPStatusCode: res.StatusCode,
 11171  		},
 11172  	}
 11173  	target := &ret
 11174  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11175  		return nil, err
 11176  	}
 11177  	return ret, nil
 11178  }
 11179  
 11180  // Pages invokes f for each page of results.
 11181  // A non-nil error returned from f will halt the iteration.
 11182  // The provided context supersedes any context provided to the Context method.
 11183  func (c *ProjectsLocationsGatewaySecurityPoliciesRulesListCall) Pages(ctx context.Context, f func(*ListGatewaySecurityPolicyRulesResponse) error) error {
 11184  	c.ctx_ = ctx
 11185  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 11186  	for {
 11187  		x, err := c.Do()
 11188  		if err != nil {
 11189  			return err
 11190  		}
 11191  		if err := f(x); err != nil {
 11192  			return err
 11193  		}
 11194  		if x.NextPageToken == "" {
 11195  			return nil
 11196  		}
 11197  		c.PageToken(x.NextPageToken)
 11198  	}
 11199  }
 11200  
 11201  type ProjectsLocationsGatewaySecurityPoliciesRulesPatchCall struct {
 11202  	s                         *Service
 11203  	name                      string
 11204  	gatewaysecuritypolicyrule *GatewaySecurityPolicyRule
 11205  	urlParams_                gensupport.URLParams
 11206  	ctx_                      context.Context
 11207  	header_                   http.Header
 11208  }
 11209  
 11210  // Patch: Updates the parameters of a single GatewaySecurityPolicyRule.
 11211  //
 11212  //   - name: Immutable. Name of the resource. ame is the full resource name so
 11213  //     projects/{project}/locations/{location}/gatewaySecurityPolicies/{gateway_se
 11214  //     curity_policy}/rules/{rule} rule should match the pattern: (^a-z
 11215  //     ([a-z0-9-]{0,61}[a-z0-9])?$).
 11216  func (r *ProjectsLocationsGatewaySecurityPoliciesRulesService) Patch(name string, gatewaysecuritypolicyrule *GatewaySecurityPolicyRule) *ProjectsLocationsGatewaySecurityPoliciesRulesPatchCall {
 11217  	c := &ProjectsLocationsGatewaySecurityPoliciesRulesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11218  	c.name = name
 11219  	c.gatewaysecuritypolicyrule = gatewaysecuritypolicyrule
 11220  	return c
 11221  }
 11222  
 11223  // UpdateMask sets the optional parameter "updateMask": Field mask is used to
 11224  // specify the fields to be overwritten in the GatewaySecurityPolicy resource
 11225  // by the update. The fields specified in the update_mask are relative to the
 11226  // resource, not the full request. A field will be overwritten if it is in the
 11227  // mask. If the user does not provide a mask then all fields will be
 11228  // overwritten.
 11229  func (c *ProjectsLocationsGatewaySecurityPoliciesRulesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsGatewaySecurityPoliciesRulesPatchCall {
 11230  	c.urlParams_.Set("updateMask", updateMask)
 11231  	return c
 11232  }
 11233  
 11234  // Fields allows partial responses to be retrieved. See
 11235  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11236  // details.
 11237  func (c *ProjectsLocationsGatewaySecurityPoliciesRulesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsGatewaySecurityPoliciesRulesPatchCall {
 11238  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11239  	return c
 11240  }
 11241  
 11242  // Context sets the context to be used in this call's Do method.
 11243  func (c *ProjectsLocationsGatewaySecurityPoliciesRulesPatchCall) Context(ctx context.Context) *ProjectsLocationsGatewaySecurityPoliciesRulesPatchCall {
 11244  	c.ctx_ = ctx
 11245  	return c
 11246  }
 11247  
 11248  // Header returns a http.Header that can be modified by the caller to add
 11249  // headers to the request.
 11250  func (c *ProjectsLocationsGatewaySecurityPoliciesRulesPatchCall) Header() http.Header {
 11251  	if c.header_ == nil {
 11252  		c.header_ = make(http.Header)
 11253  	}
 11254  	return c.header_
 11255  }
 11256  
 11257  func (c *ProjectsLocationsGatewaySecurityPoliciesRulesPatchCall) doRequest(alt string) (*http.Response, error) {
 11258  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 11259  	var body io.Reader = nil
 11260  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.gatewaysecuritypolicyrule)
 11261  	if err != nil {
 11262  		return nil, err
 11263  	}
 11264  	c.urlParams_.Set("alt", alt)
 11265  	c.urlParams_.Set("prettyPrint", "false")
 11266  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 11267  	urls += "?" + c.urlParams_.Encode()
 11268  	req, err := http.NewRequest("PATCH", urls, body)
 11269  	if err != nil {
 11270  		return nil, err
 11271  	}
 11272  	req.Header = reqHeaders
 11273  	googleapi.Expand(req.URL, map[string]string{
 11274  		"name": c.name,
 11275  	})
 11276  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11277  }
 11278  
 11279  // Do executes the "networksecurity.projects.locations.gatewaySecurityPolicies.rules.patch" call.
 11280  // Any non-2xx status code is an error. Response headers are in either
 11281  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 11282  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 11283  // whether the returned error was because http.StatusNotModified was returned.
 11284  func (c *ProjectsLocationsGatewaySecurityPoliciesRulesPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 11285  	gensupport.SetOptions(c.urlParams_, opts...)
 11286  	res, err := c.doRequest("json")
 11287  	if res != nil && res.StatusCode == http.StatusNotModified {
 11288  		if res.Body != nil {
 11289  			res.Body.Close()
 11290  		}
 11291  		return nil, gensupport.WrapError(&googleapi.Error{
 11292  			Code:   res.StatusCode,
 11293  			Header: res.Header,
 11294  		})
 11295  	}
 11296  	if err != nil {
 11297  		return nil, err
 11298  	}
 11299  	defer googleapi.CloseBody(res)
 11300  	if err := googleapi.CheckResponse(res); err != nil {
 11301  		return nil, gensupport.WrapError(err)
 11302  	}
 11303  	ret := &Operation{
 11304  		ServerResponse: googleapi.ServerResponse{
 11305  			Header:         res.Header,
 11306  			HTTPStatusCode: res.StatusCode,
 11307  		},
 11308  	}
 11309  	target := &ret
 11310  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11311  		return nil, err
 11312  	}
 11313  	return ret, nil
 11314  }
 11315  
 11316  type ProjectsLocationsOperationsCancelCall struct {
 11317  	s                      *Service
 11318  	name                   string
 11319  	canceloperationrequest *CancelOperationRequest
 11320  	urlParams_             gensupport.URLParams
 11321  	ctx_                   context.Context
 11322  	header_                http.Header
 11323  }
 11324  
 11325  // Cancel: Starts asynchronous cancellation on a long-running operation. The
 11326  // server makes a best effort to cancel the operation, but success is not
 11327  // guaranteed. If the server doesn't support this method, it returns
 11328  // `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or
 11329  // other methods to check whether the cancellation succeeded or whether the
 11330  // operation completed despite cancellation. On successful cancellation, the
 11331  // operation is not deleted; instead, it becomes an operation with an
 11332  // Operation.error value with a google.rpc.Status.code of 1, corresponding to
 11333  // `Code.CANCELLED`.
 11334  //
 11335  // - name: The name of the operation resource to be cancelled.
 11336  func (r *ProjectsLocationsOperationsService) Cancel(name string, canceloperationrequest *CancelOperationRequest) *ProjectsLocationsOperationsCancelCall {
 11337  	c := &ProjectsLocationsOperationsCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11338  	c.name = name
 11339  	c.canceloperationrequest = canceloperationrequest
 11340  	return c
 11341  }
 11342  
 11343  // Fields allows partial responses to be retrieved. See
 11344  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11345  // details.
 11346  func (c *ProjectsLocationsOperationsCancelCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsCancelCall {
 11347  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11348  	return c
 11349  }
 11350  
 11351  // Context sets the context to be used in this call's Do method.
 11352  func (c *ProjectsLocationsOperationsCancelCall) Context(ctx context.Context) *ProjectsLocationsOperationsCancelCall {
 11353  	c.ctx_ = ctx
 11354  	return c
 11355  }
 11356  
 11357  // Header returns a http.Header that can be modified by the caller to add
 11358  // headers to the request.
 11359  func (c *ProjectsLocationsOperationsCancelCall) Header() http.Header {
 11360  	if c.header_ == nil {
 11361  		c.header_ = make(http.Header)
 11362  	}
 11363  	return c.header_
 11364  }
 11365  
 11366  func (c *ProjectsLocationsOperationsCancelCall) doRequest(alt string) (*http.Response, error) {
 11367  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 11368  	var body io.Reader = nil
 11369  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.canceloperationrequest)
 11370  	if err != nil {
 11371  		return nil, err
 11372  	}
 11373  	c.urlParams_.Set("alt", alt)
 11374  	c.urlParams_.Set("prettyPrint", "false")
 11375  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:cancel")
 11376  	urls += "?" + c.urlParams_.Encode()
 11377  	req, err := http.NewRequest("POST", urls, body)
 11378  	if err != nil {
 11379  		return nil, err
 11380  	}
 11381  	req.Header = reqHeaders
 11382  	googleapi.Expand(req.URL, map[string]string{
 11383  		"name": c.name,
 11384  	})
 11385  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11386  }
 11387  
 11388  // Do executes the "networksecurity.projects.locations.operations.cancel" call.
 11389  // Any non-2xx status code is an error. Response headers are in either
 11390  // *Empty.ServerResponse.Header or (if a response was returned at all) in
 11391  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 11392  // whether the returned error was because http.StatusNotModified was returned.
 11393  func (c *ProjectsLocationsOperationsCancelCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
 11394  	gensupport.SetOptions(c.urlParams_, opts...)
 11395  	res, err := c.doRequest("json")
 11396  	if res != nil && res.StatusCode == http.StatusNotModified {
 11397  		if res.Body != nil {
 11398  			res.Body.Close()
 11399  		}
 11400  		return nil, gensupport.WrapError(&googleapi.Error{
 11401  			Code:   res.StatusCode,
 11402  			Header: res.Header,
 11403  		})
 11404  	}
 11405  	if err != nil {
 11406  		return nil, err
 11407  	}
 11408  	defer googleapi.CloseBody(res)
 11409  	if err := googleapi.CheckResponse(res); err != nil {
 11410  		return nil, gensupport.WrapError(err)
 11411  	}
 11412  	ret := &Empty{
 11413  		ServerResponse: googleapi.ServerResponse{
 11414  			Header:         res.Header,
 11415  			HTTPStatusCode: res.StatusCode,
 11416  		},
 11417  	}
 11418  	target := &ret
 11419  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11420  		return nil, err
 11421  	}
 11422  	return ret, nil
 11423  }
 11424  
 11425  type ProjectsLocationsOperationsDeleteCall struct {
 11426  	s          *Service
 11427  	name       string
 11428  	urlParams_ gensupport.URLParams
 11429  	ctx_       context.Context
 11430  	header_    http.Header
 11431  }
 11432  
 11433  // Delete: Deletes a long-running operation. This method indicates that the
 11434  // client is no longer interested in the operation result. It does not cancel
 11435  // the operation. If the server doesn't support this method, it returns
 11436  // `google.rpc.Code.UNIMPLEMENTED`.
 11437  //
 11438  // - name: The name of the operation resource to be deleted.
 11439  func (r *ProjectsLocationsOperationsService) Delete(name string) *ProjectsLocationsOperationsDeleteCall {
 11440  	c := &ProjectsLocationsOperationsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11441  	c.name = name
 11442  	return c
 11443  }
 11444  
 11445  // Fields allows partial responses to be retrieved. See
 11446  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11447  // details.
 11448  func (c *ProjectsLocationsOperationsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsDeleteCall {
 11449  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11450  	return c
 11451  }
 11452  
 11453  // Context sets the context to be used in this call's Do method.
 11454  func (c *ProjectsLocationsOperationsDeleteCall) Context(ctx context.Context) *ProjectsLocationsOperationsDeleteCall {
 11455  	c.ctx_ = ctx
 11456  	return c
 11457  }
 11458  
 11459  // Header returns a http.Header that can be modified by the caller to add
 11460  // headers to the request.
 11461  func (c *ProjectsLocationsOperationsDeleteCall) Header() http.Header {
 11462  	if c.header_ == nil {
 11463  		c.header_ = make(http.Header)
 11464  	}
 11465  	return c.header_
 11466  }
 11467  
 11468  func (c *ProjectsLocationsOperationsDeleteCall) doRequest(alt string) (*http.Response, error) {
 11469  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 11470  	var body io.Reader = nil
 11471  	c.urlParams_.Set("alt", alt)
 11472  	c.urlParams_.Set("prettyPrint", "false")
 11473  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 11474  	urls += "?" + c.urlParams_.Encode()
 11475  	req, err := http.NewRequest("DELETE", urls, body)
 11476  	if err != nil {
 11477  		return nil, err
 11478  	}
 11479  	req.Header = reqHeaders
 11480  	googleapi.Expand(req.URL, map[string]string{
 11481  		"name": c.name,
 11482  	})
 11483  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11484  }
 11485  
 11486  // Do executes the "networksecurity.projects.locations.operations.delete" call.
 11487  // Any non-2xx status code is an error. Response headers are in either
 11488  // *Empty.ServerResponse.Header or (if a response was returned at all) in
 11489  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 11490  // whether the returned error was because http.StatusNotModified was returned.
 11491  func (c *ProjectsLocationsOperationsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
 11492  	gensupport.SetOptions(c.urlParams_, opts...)
 11493  	res, err := c.doRequest("json")
 11494  	if res != nil && res.StatusCode == http.StatusNotModified {
 11495  		if res.Body != nil {
 11496  			res.Body.Close()
 11497  		}
 11498  		return nil, gensupport.WrapError(&googleapi.Error{
 11499  			Code:   res.StatusCode,
 11500  			Header: res.Header,
 11501  		})
 11502  	}
 11503  	if err != nil {
 11504  		return nil, err
 11505  	}
 11506  	defer googleapi.CloseBody(res)
 11507  	if err := googleapi.CheckResponse(res); err != nil {
 11508  		return nil, gensupport.WrapError(err)
 11509  	}
 11510  	ret := &Empty{
 11511  		ServerResponse: googleapi.ServerResponse{
 11512  			Header:         res.Header,
 11513  			HTTPStatusCode: res.StatusCode,
 11514  		},
 11515  	}
 11516  	target := &ret
 11517  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11518  		return nil, err
 11519  	}
 11520  	return ret, nil
 11521  }
 11522  
 11523  type ProjectsLocationsOperationsGetCall struct {
 11524  	s            *Service
 11525  	name         string
 11526  	urlParams_   gensupport.URLParams
 11527  	ifNoneMatch_ string
 11528  	ctx_         context.Context
 11529  	header_      http.Header
 11530  }
 11531  
 11532  // Get: Gets the latest state of a long-running operation. Clients can use this
 11533  // method to poll the operation result at intervals as recommended by the API
 11534  // service.
 11535  //
 11536  // - name: The name of the operation resource.
 11537  func (r *ProjectsLocationsOperationsService) Get(name string) *ProjectsLocationsOperationsGetCall {
 11538  	c := &ProjectsLocationsOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11539  	c.name = name
 11540  	return c
 11541  }
 11542  
 11543  // Fields allows partial responses to be retrieved. See
 11544  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11545  // details.
 11546  func (c *ProjectsLocationsOperationsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsGetCall {
 11547  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11548  	return c
 11549  }
 11550  
 11551  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 11552  // object's ETag matches the given value. This is useful for getting updates
 11553  // only after the object has changed since the last request.
 11554  func (c *ProjectsLocationsOperationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsOperationsGetCall {
 11555  	c.ifNoneMatch_ = entityTag
 11556  	return c
 11557  }
 11558  
 11559  // Context sets the context to be used in this call's Do method.
 11560  func (c *ProjectsLocationsOperationsGetCall) Context(ctx context.Context) *ProjectsLocationsOperationsGetCall {
 11561  	c.ctx_ = ctx
 11562  	return c
 11563  }
 11564  
 11565  // Header returns a http.Header that can be modified by the caller to add
 11566  // headers to the request.
 11567  func (c *ProjectsLocationsOperationsGetCall) Header() http.Header {
 11568  	if c.header_ == nil {
 11569  		c.header_ = make(http.Header)
 11570  	}
 11571  	return c.header_
 11572  }
 11573  
 11574  func (c *ProjectsLocationsOperationsGetCall) doRequest(alt string) (*http.Response, error) {
 11575  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 11576  	if c.ifNoneMatch_ != "" {
 11577  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 11578  	}
 11579  	var body io.Reader = nil
 11580  	c.urlParams_.Set("alt", alt)
 11581  	c.urlParams_.Set("prettyPrint", "false")
 11582  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 11583  	urls += "?" + c.urlParams_.Encode()
 11584  	req, err := http.NewRequest("GET", urls, body)
 11585  	if err != nil {
 11586  		return nil, err
 11587  	}
 11588  	req.Header = reqHeaders
 11589  	googleapi.Expand(req.URL, map[string]string{
 11590  		"name": c.name,
 11591  	})
 11592  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11593  }
 11594  
 11595  // Do executes the "networksecurity.projects.locations.operations.get" call.
 11596  // Any non-2xx status code is an error. Response headers are in either
 11597  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 11598  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 11599  // whether the returned error was because http.StatusNotModified was returned.
 11600  func (c *ProjectsLocationsOperationsGetCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 11601  	gensupport.SetOptions(c.urlParams_, opts...)
 11602  	res, err := c.doRequest("json")
 11603  	if res != nil && res.StatusCode == http.StatusNotModified {
 11604  		if res.Body != nil {
 11605  			res.Body.Close()
 11606  		}
 11607  		return nil, gensupport.WrapError(&googleapi.Error{
 11608  			Code:   res.StatusCode,
 11609  			Header: res.Header,
 11610  		})
 11611  	}
 11612  	if err != nil {
 11613  		return nil, err
 11614  	}
 11615  	defer googleapi.CloseBody(res)
 11616  	if err := googleapi.CheckResponse(res); err != nil {
 11617  		return nil, gensupport.WrapError(err)
 11618  	}
 11619  	ret := &Operation{
 11620  		ServerResponse: googleapi.ServerResponse{
 11621  			Header:         res.Header,
 11622  			HTTPStatusCode: res.StatusCode,
 11623  		},
 11624  	}
 11625  	target := &ret
 11626  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11627  		return nil, err
 11628  	}
 11629  	return ret, nil
 11630  }
 11631  
 11632  type ProjectsLocationsOperationsListCall struct {
 11633  	s            *Service
 11634  	name         string
 11635  	urlParams_   gensupport.URLParams
 11636  	ifNoneMatch_ string
 11637  	ctx_         context.Context
 11638  	header_      http.Header
 11639  }
 11640  
 11641  // List: Lists operations that match the specified filter in the request. If
 11642  // the server doesn't support this method, it returns `UNIMPLEMENTED`.
 11643  //
 11644  // - name: The name of the operation's parent resource.
 11645  func (r *ProjectsLocationsOperationsService) List(name string) *ProjectsLocationsOperationsListCall {
 11646  	c := &ProjectsLocationsOperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11647  	c.name = name
 11648  	return c
 11649  }
 11650  
 11651  // Filter sets the optional parameter "filter": The standard list filter.
 11652  func (c *ProjectsLocationsOperationsListCall) Filter(filter string) *ProjectsLocationsOperationsListCall {
 11653  	c.urlParams_.Set("filter", filter)
 11654  	return c
 11655  }
 11656  
 11657  // PageSize sets the optional parameter "pageSize": The standard list page
 11658  // size.
 11659  func (c *ProjectsLocationsOperationsListCall) PageSize(pageSize int64) *ProjectsLocationsOperationsListCall {
 11660  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 11661  	return c
 11662  }
 11663  
 11664  // PageToken sets the optional parameter "pageToken": The standard list page
 11665  // token.
 11666  func (c *ProjectsLocationsOperationsListCall) PageToken(pageToken string) *ProjectsLocationsOperationsListCall {
 11667  	c.urlParams_.Set("pageToken", pageToken)
 11668  	return c
 11669  }
 11670  
 11671  // Fields allows partial responses to be retrieved. See
 11672  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11673  // details.
 11674  func (c *ProjectsLocationsOperationsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsListCall {
 11675  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11676  	return c
 11677  }
 11678  
 11679  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 11680  // object's ETag matches the given value. This is useful for getting updates
 11681  // only after the object has changed since the last request.
 11682  func (c *ProjectsLocationsOperationsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsOperationsListCall {
 11683  	c.ifNoneMatch_ = entityTag
 11684  	return c
 11685  }
 11686  
 11687  // Context sets the context to be used in this call's Do method.
 11688  func (c *ProjectsLocationsOperationsListCall) Context(ctx context.Context) *ProjectsLocationsOperationsListCall {
 11689  	c.ctx_ = ctx
 11690  	return c
 11691  }
 11692  
 11693  // Header returns a http.Header that can be modified by the caller to add
 11694  // headers to the request.
 11695  func (c *ProjectsLocationsOperationsListCall) Header() http.Header {
 11696  	if c.header_ == nil {
 11697  		c.header_ = make(http.Header)
 11698  	}
 11699  	return c.header_
 11700  }
 11701  
 11702  func (c *ProjectsLocationsOperationsListCall) doRequest(alt string) (*http.Response, error) {
 11703  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 11704  	if c.ifNoneMatch_ != "" {
 11705  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 11706  	}
 11707  	var body io.Reader = nil
 11708  	c.urlParams_.Set("alt", alt)
 11709  	c.urlParams_.Set("prettyPrint", "false")
 11710  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}/operations")
 11711  	urls += "?" + c.urlParams_.Encode()
 11712  	req, err := http.NewRequest("GET", urls, body)
 11713  	if err != nil {
 11714  		return nil, err
 11715  	}
 11716  	req.Header = reqHeaders
 11717  	googleapi.Expand(req.URL, map[string]string{
 11718  		"name": c.name,
 11719  	})
 11720  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11721  }
 11722  
 11723  // Do executes the "networksecurity.projects.locations.operations.list" call.
 11724  // Any non-2xx status code is an error. Response headers are in either
 11725  // *ListOperationsResponse.ServerResponse.Header or (if a response was returned
 11726  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 11727  // check whether the returned error was because http.StatusNotModified was
 11728  // returned.
 11729  func (c *ProjectsLocationsOperationsListCall) Do(opts ...googleapi.CallOption) (*ListOperationsResponse, error) {
 11730  	gensupport.SetOptions(c.urlParams_, opts...)
 11731  	res, err := c.doRequest("json")
 11732  	if res != nil && res.StatusCode == http.StatusNotModified {
 11733  		if res.Body != nil {
 11734  			res.Body.Close()
 11735  		}
 11736  		return nil, gensupport.WrapError(&googleapi.Error{
 11737  			Code:   res.StatusCode,
 11738  			Header: res.Header,
 11739  		})
 11740  	}
 11741  	if err != nil {
 11742  		return nil, err
 11743  	}
 11744  	defer googleapi.CloseBody(res)
 11745  	if err := googleapi.CheckResponse(res); err != nil {
 11746  		return nil, gensupport.WrapError(err)
 11747  	}
 11748  	ret := &ListOperationsResponse{
 11749  		ServerResponse: googleapi.ServerResponse{
 11750  			Header:         res.Header,
 11751  			HTTPStatusCode: res.StatusCode,
 11752  		},
 11753  	}
 11754  	target := &ret
 11755  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11756  		return nil, err
 11757  	}
 11758  	return ret, nil
 11759  }
 11760  
 11761  // Pages invokes f for each page of results.
 11762  // A non-nil error returned from f will halt the iteration.
 11763  // The provided context supersedes any context provided to the Context method.
 11764  func (c *ProjectsLocationsOperationsListCall) Pages(ctx context.Context, f func(*ListOperationsResponse) error) error {
 11765  	c.ctx_ = ctx
 11766  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 11767  	for {
 11768  		x, err := c.Do()
 11769  		if err != nil {
 11770  			return err
 11771  		}
 11772  		if err := f(x); err != nil {
 11773  			return err
 11774  		}
 11775  		if x.NextPageToken == "" {
 11776  			return nil
 11777  		}
 11778  		c.PageToken(x.NextPageToken)
 11779  	}
 11780  }
 11781  
 11782  type ProjectsLocationsServerTlsPoliciesCreateCall struct {
 11783  	s               *Service
 11784  	parent          string
 11785  	servertlspolicy *ServerTlsPolicy
 11786  	urlParams_      gensupport.URLParams
 11787  	ctx_            context.Context
 11788  	header_         http.Header
 11789  }
 11790  
 11791  // Create: Creates a new ServerTlsPolicy in a given project and location.
 11792  //
 11793  //   - parent: The parent resource of the ServerTlsPolicy. Must be in the format
 11794  //     `projects/*/locations/{location}`.
 11795  func (r *ProjectsLocationsServerTlsPoliciesService) Create(parent string, servertlspolicy *ServerTlsPolicy) *ProjectsLocationsServerTlsPoliciesCreateCall {
 11796  	c := &ProjectsLocationsServerTlsPoliciesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11797  	c.parent = parent
 11798  	c.servertlspolicy = servertlspolicy
 11799  	return c
 11800  }
 11801  
 11802  // ServerTlsPolicyId sets the optional parameter "serverTlsPolicyId": Required.
 11803  // Short name of the ServerTlsPolicy resource to be created. This value should
 11804  // be 1-63 characters long, containing only letters, numbers, hyphens, and
 11805  // underscores, and should not start with a number. E.g. "server_mtls_policy".
 11806  func (c *ProjectsLocationsServerTlsPoliciesCreateCall) ServerTlsPolicyId(serverTlsPolicyId string) *ProjectsLocationsServerTlsPoliciesCreateCall {
 11807  	c.urlParams_.Set("serverTlsPolicyId", serverTlsPolicyId)
 11808  	return c
 11809  }
 11810  
 11811  // Fields allows partial responses to be retrieved. See
 11812  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11813  // details.
 11814  func (c *ProjectsLocationsServerTlsPoliciesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsServerTlsPoliciesCreateCall {
 11815  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11816  	return c
 11817  }
 11818  
 11819  // Context sets the context to be used in this call's Do method.
 11820  func (c *ProjectsLocationsServerTlsPoliciesCreateCall) Context(ctx context.Context) *ProjectsLocationsServerTlsPoliciesCreateCall {
 11821  	c.ctx_ = ctx
 11822  	return c
 11823  }
 11824  
 11825  // Header returns a http.Header that can be modified by the caller to add
 11826  // headers to the request.
 11827  func (c *ProjectsLocationsServerTlsPoliciesCreateCall) Header() http.Header {
 11828  	if c.header_ == nil {
 11829  		c.header_ = make(http.Header)
 11830  	}
 11831  	return c.header_
 11832  }
 11833  
 11834  func (c *ProjectsLocationsServerTlsPoliciesCreateCall) doRequest(alt string) (*http.Response, error) {
 11835  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 11836  	var body io.Reader = nil
 11837  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.servertlspolicy)
 11838  	if err != nil {
 11839  		return nil, err
 11840  	}
 11841  	c.urlParams_.Set("alt", alt)
 11842  	c.urlParams_.Set("prettyPrint", "false")
 11843  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/serverTlsPolicies")
 11844  	urls += "?" + c.urlParams_.Encode()
 11845  	req, err := http.NewRequest("POST", urls, body)
 11846  	if err != nil {
 11847  		return nil, err
 11848  	}
 11849  	req.Header = reqHeaders
 11850  	googleapi.Expand(req.URL, map[string]string{
 11851  		"parent": c.parent,
 11852  	})
 11853  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11854  }
 11855  
 11856  // Do executes the "networksecurity.projects.locations.serverTlsPolicies.create" call.
 11857  // Any non-2xx status code is an error. Response headers are in either
 11858  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 11859  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 11860  // whether the returned error was because http.StatusNotModified was returned.
 11861  func (c *ProjectsLocationsServerTlsPoliciesCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 11862  	gensupport.SetOptions(c.urlParams_, opts...)
 11863  	res, err := c.doRequest("json")
 11864  	if res != nil && res.StatusCode == http.StatusNotModified {
 11865  		if res.Body != nil {
 11866  			res.Body.Close()
 11867  		}
 11868  		return nil, gensupport.WrapError(&googleapi.Error{
 11869  			Code:   res.StatusCode,
 11870  			Header: res.Header,
 11871  		})
 11872  	}
 11873  	if err != nil {
 11874  		return nil, err
 11875  	}
 11876  	defer googleapi.CloseBody(res)
 11877  	if err := googleapi.CheckResponse(res); err != nil {
 11878  		return nil, gensupport.WrapError(err)
 11879  	}
 11880  	ret := &Operation{
 11881  		ServerResponse: googleapi.ServerResponse{
 11882  			Header:         res.Header,
 11883  			HTTPStatusCode: res.StatusCode,
 11884  		},
 11885  	}
 11886  	target := &ret
 11887  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11888  		return nil, err
 11889  	}
 11890  	return ret, nil
 11891  }
 11892  
 11893  type ProjectsLocationsServerTlsPoliciesDeleteCall struct {
 11894  	s          *Service
 11895  	name       string
 11896  	urlParams_ gensupport.URLParams
 11897  	ctx_       context.Context
 11898  	header_    http.Header
 11899  }
 11900  
 11901  // Delete: Deletes a single ServerTlsPolicy.
 11902  //
 11903  //   - name: A name of the ServerTlsPolicy to delete. Must be in the format
 11904  //     `projects/*/locations/{location}/serverTlsPolicies/*`.
 11905  func (r *ProjectsLocationsServerTlsPoliciesService) Delete(name string) *ProjectsLocationsServerTlsPoliciesDeleteCall {
 11906  	c := &ProjectsLocationsServerTlsPoliciesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11907  	c.name = name
 11908  	return c
 11909  }
 11910  
 11911  // Fields allows partial responses to be retrieved. See
 11912  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11913  // details.
 11914  func (c *ProjectsLocationsServerTlsPoliciesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsServerTlsPoliciesDeleteCall {
 11915  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11916  	return c
 11917  }
 11918  
 11919  // Context sets the context to be used in this call's Do method.
 11920  func (c *ProjectsLocationsServerTlsPoliciesDeleteCall) Context(ctx context.Context) *ProjectsLocationsServerTlsPoliciesDeleteCall {
 11921  	c.ctx_ = ctx
 11922  	return c
 11923  }
 11924  
 11925  // Header returns a http.Header that can be modified by the caller to add
 11926  // headers to the request.
 11927  func (c *ProjectsLocationsServerTlsPoliciesDeleteCall) Header() http.Header {
 11928  	if c.header_ == nil {
 11929  		c.header_ = make(http.Header)
 11930  	}
 11931  	return c.header_
 11932  }
 11933  
 11934  func (c *ProjectsLocationsServerTlsPoliciesDeleteCall) doRequest(alt string) (*http.Response, error) {
 11935  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 11936  	var body io.Reader = nil
 11937  	c.urlParams_.Set("alt", alt)
 11938  	c.urlParams_.Set("prettyPrint", "false")
 11939  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 11940  	urls += "?" + c.urlParams_.Encode()
 11941  	req, err := http.NewRequest("DELETE", urls, body)
 11942  	if err != nil {
 11943  		return nil, err
 11944  	}
 11945  	req.Header = reqHeaders
 11946  	googleapi.Expand(req.URL, map[string]string{
 11947  		"name": c.name,
 11948  	})
 11949  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11950  }
 11951  
 11952  // Do executes the "networksecurity.projects.locations.serverTlsPolicies.delete" call.
 11953  // Any non-2xx status code is an error. Response headers are in either
 11954  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 11955  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 11956  // whether the returned error was because http.StatusNotModified was returned.
 11957  func (c *ProjectsLocationsServerTlsPoliciesDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 11958  	gensupport.SetOptions(c.urlParams_, opts...)
 11959  	res, err := c.doRequest("json")
 11960  	if res != nil && res.StatusCode == http.StatusNotModified {
 11961  		if res.Body != nil {
 11962  			res.Body.Close()
 11963  		}
 11964  		return nil, gensupport.WrapError(&googleapi.Error{
 11965  			Code:   res.StatusCode,
 11966  			Header: res.Header,
 11967  		})
 11968  	}
 11969  	if err != nil {
 11970  		return nil, err
 11971  	}
 11972  	defer googleapi.CloseBody(res)
 11973  	if err := googleapi.CheckResponse(res); err != nil {
 11974  		return nil, gensupport.WrapError(err)
 11975  	}
 11976  	ret := &Operation{
 11977  		ServerResponse: googleapi.ServerResponse{
 11978  			Header:         res.Header,
 11979  			HTTPStatusCode: res.StatusCode,
 11980  		},
 11981  	}
 11982  	target := &ret
 11983  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11984  		return nil, err
 11985  	}
 11986  	return ret, nil
 11987  }
 11988  
 11989  type ProjectsLocationsServerTlsPoliciesGetCall struct {
 11990  	s            *Service
 11991  	name         string
 11992  	urlParams_   gensupport.URLParams
 11993  	ifNoneMatch_ string
 11994  	ctx_         context.Context
 11995  	header_      http.Header
 11996  }
 11997  
 11998  // Get: Gets details of a single ServerTlsPolicy.
 11999  //
 12000  //   - name: A name of the ServerTlsPolicy to get. Must be in the format
 12001  //     `projects/*/locations/{location}/serverTlsPolicies/*`.
 12002  func (r *ProjectsLocationsServerTlsPoliciesService) Get(name string) *ProjectsLocationsServerTlsPoliciesGetCall {
 12003  	c := &ProjectsLocationsServerTlsPoliciesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12004  	c.name = name
 12005  	return c
 12006  }
 12007  
 12008  // Fields allows partial responses to be retrieved. See
 12009  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12010  // details.
 12011  func (c *ProjectsLocationsServerTlsPoliciesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsServerTlsPoliciesGetCall {
 12012  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12013  	return c
 12014  }
 12015  
 12016  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 12017  // object's ETag matches the given value. This is useful for getting updates
 12018  // only after the object has changed since the last request.
 12019  func (c *ProjectsLocationsServerTlsPoliciesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsServerTlsPoliciesGetCall {
 12020  	c.ifNoneMatch_ = entityTag
 12021  	return c
 12022  }
 12023  
 12024  // Context sets the context to be used in this call's Do method.
 12025  func (c *ProjectsLocationsServerTlsPoliciesGetCall) Context(ctx context.Context) *ProjectsLocationsServerTlsPoliciesGetCall {
 12026  	c.ctx_ = ctx
 12027  	return c
 12028  }
 12029  
 12030  // Header returns a http.Header that can be modified by the caller to add
 12031  // headers to the request.
 12032  func (c *ProjectsLocationsServerTlsPoliciesGetCall) Header() http.Header {
 12033  	if c.header_ == nil {
 12034  		c.header_ = make(http.Header)
 12035  	}
 12036  	return c.header_
 12037  }
 12038  
 12039  func (c *ProjectsLocationsServerTlsPoliciesGetCall) doRequest(alt string) (*http.Response, error) {
 12040  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 12041  	if c.ifNoneMatch_ != "" {
 12042  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 12043  	}
 12044  	var body io.Reader = nil
 12045  	c.urlParams_.Set("alt", alt)
 12046  	c.urlParams_.Set("prettyPrint", "false")
 12047  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 12048  	urls += "?" + c.urlParams_.Encode()
 12049  	req, err := http.NewRequest("GET", urls, body)
 12050  	if err != nil {
 12051  		return nil, err
 12052  	}
 12053  	req.Header = reqHeaders
 12054  	googleapi.Expand(req.URL, map[string]string{
 12055  		"name": c.name,
 12056  	})
 12057  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12058  }
 12059  
 12060  // Do executes the "networksecurity.projects.locations.serverTlsPolicies.get" call.
 12061  // Any non-2xx status code is an error. Response headers are in either
 12062  // *ServerTlsPolicy.ServerResponse.Header or (if a response was returned at
 12063  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 12064  // check whether the returned error was because http.StatusNotModified was
 12065  // returned.
 12066  func (c *ProjectsLocationsServerTlsPoliciesGetCall) Do(opts ...googleapi.CallOption) (*ServerTlsPolicy, error) {
 12067  	gensupport.SetOptions(c.urlParams_, opts...)
 12068  	res, err := c.doRequest("json")
 12069  	if res != nil && res.StatusCode == http.StatusNotModified {
 12070  		if res.Body != nil {
 12071  			res.Body.Close()
 12072  		}
 12073  		return nil, gensupport.WrapError(&googleapi.Error{
 12074  			Code:   res.StatusCode,
 12075  			Header: res.Header,
 12076  		})
 12077  	}
 12078  	if err != nil {
 12079  		return nil, err
 12080  	}
 12081  	defer googleapi.CloseBody(res)
 12082  	if err := googleapi.CheckResponse(res); err != nil {
 12083  		return nil, gensupport.WrapError(err)
 12084  	}
 12085  	ret := &ServerTlsPolicy{
 12086  		ServerResponse: googleapi.ServerResponse{
 12087  			Header:         res.Header,
 12088  			HTTPStatusCode: res.StatusCode,
 12089  		},
 12090  	}
 12091  	target := &ret
 12092  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12093  		return nil, err
 12094  	}
 12095  	return ret, nil
 12096  }
 12097  
 12098  type ProjectsLocationsServerTlsPoliciesGetIamPolicyCall struct {
 12099  	s            *Service
 12100  	resource     string
 12101  	urlParams_   gensupport.URLParams
 12102  	ifNoneMatch_ string
 12103  	ctx_         context.Context
 12104  	header_      http.Header
 12105  }
 12106  
 12107  // GetIamPolicy: Gets the access control policy for a resource. Returns an
 12108  // empty policy if the resource exists and does not have a policy set.
 12109  //
 12110  //   - resource: REQUIRED: The resource for which the policy is being requested.
 12111  //     See Resource names (https://cloud.google.com/apis/design/resource_names)
 12112  //     for the appropriate value for this field.
 12113  func (r *ProjectsLocationsServerTlsPoliciesService) GetIamPolicy(resource string) *ProjectsLocationsServerTlsPoliciesGetIamPolicyCall {
 12114  	c := &ProjectsLocationsServerTlsPoliciesGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12115  	c.resource = resource
 12116  	return c
 12117  }
 12118  
 12119  // OptionsRequestedPolicyVersion sets the optional parameter
 12120  // "options.requestedPolicyVersion": The maximum policy version that will be
 12121  // used to format the policy. Valid values are 0, 1, and 3. Requests specifying
 12122  // an invalid value will be rejected. Requests for policies with any
 12123  // conditional role bindings must specify version 3. Policies with no
 12124  // conditional role bindings may specify any valid value or leave the field
 12125  // unset. The policy in the response might use the policy version that you
 12126  // specified, or it might use a lower policy version. For example, if you
 12127  // specify version 3, but the policy has no conditional role bindings, the
 12128  // response uses version 1. To learn which resources support conditions in
 12129  // their IAM policies, see the IAM documentation
 12130  // (https://cloud.google.com/iam/help/conditions/resource-policies).
 12131  func (c *ProjectsLocationsServerTlsPoliciesGetIamPolicyCall) OptionsRequestedPolicyVersion(optionsRequestedPolicyVersion int64) *ProjectsLocationsServerTlsPoliciesGetIamPolicyCall {
 12132  	c.urlParams_.Set("options.requestedPolicyVersion", fmt.Sprint(optionsRequestedPolicyVersion))
 12133  	return c
 12134  }
 12135  
 12136  // Fields allows partial responses to be retrieved. See
 12137  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12138  // details.
 12139  func (c *ProjectsLocationsServerTlsPoliciesGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsServerTlsPoliciesGetIamPolicyCall {
 12140  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12141  	return c
 12142  }
 12143  
 12144  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 12145  // object's ETag matches the given value. This is useful for getting updates
 12146  // only after the object has changed since the last request.
 12147  func (c *ProjectsLocationsServerTlsPoliciesGetIamPolicyCall) IfNoneMatch(entityTag string) *ProjectsLocationsServerTlsPoliciesGetIamPolicyCall {
 12148  	c.ifNoneMatch_ = entityTag
 12149  	return c
 12150  }
 12151  
 12152  // Context sets the context to be used in this call's Do method.
 12153  func (c *ProjectsLocationsServerTlsPoliciesGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsServerTlsPoliciesGetIamPolicyCall {
 12154  	c.ctx_ = ctx
 12155  	return c
 12156  }
 12157  
 12158  // Header returns a http.Header that can be modified by the caller to add
 12159  // headers to the request.
 12160  func (c *ProjectsLocationsServerTlsPoliciesGetIamPolicyCall) Header() http.Header {
 12161  	if c.header_ == nil {
 12162  		c.header_ = make(http.Header)
 12163  	}
 12164  	return c.header_
 12165  }
 12166  
 12167  func (c *ProjectsLocationsServerTlsPoliciesGetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
 12168  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 12169  	if c.ifNoneMatch_ != "" {
 12170  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 12171  	}
 12172  	var body io.Reader = nil
 12173  	c.urlParams_.Set("alt", alt)
 12174  	c.urlParams_.Set("prettyPrint", "false")
 12175  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:getIamPolicy")
 12176  	urls += "?" + c.urlParams_.Encode()
 12177  	req, err := http.NewRequest("GET", urls, body)
 12178  	if err != nil {
 12179  		return nil, err
 12180  	}
 12181  	req.Header = reqHeaders
 12182  	googleapi.Expand(req.URL, map[string]string{
 12183  		"resource": c.resource,
 12184  	})
 12185  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12186  }
 12187  
 12188  // Do executes the "networksecurity.projects.locations.serverTlsPolicies.getIamPolicy" call.
 12189  // Any non-2xx status code is an error. Response headers are in either
 12190  // *GoogleIamV1Policy.ServerResponse.Header or (if a response was returned at
 12191  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 12192  // check whether the returned error was because http.StatusNotModified was
 12193  // returned.
 12194  func (c *ProjectsLocationsServerTlsPoliciesGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1Policy, error) {
 12195  	gensupport.SetOptions(c.urlParams_, opts...)
 12196  	res, err := c.doRequest("json")
 12197  	if res != nil && res.StatusCode == http.StatusNotModified {
 12198  		if res.Body != nil {
 12199  			res.Body.Close()
 12200  		}
 12201  		return nil, gensupport.WrapError(&googleapi.Error{
 12202  			Code:   res.StatusCode,
 12203  			Header: res.Header,
 12204  		})
 12205  	}
 12206  	if err != nil {
 12207  		return nil, err
 12208  	}
 12209  	defer googleapi.CloseBody(res)
 12210  	if err := googleapi.CheckResponse(res); err != nil {
 12211  		return nil, gensupport.WrapError(err)
 12212  	}
 12213  	ret := &GoogleIamV1Policy{
 12214  		ServerResponse: googleapi.ServerResponse{
 12215  			Header:         res.Header,
 12216  			HTTPStatusCode: res.StatusCode,
 12217  		},
 12218  	}
 12219  	target := &ret
 12220  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12221  		return nil, err
 12222  	}
 12223  	return ret, nil
 12224  }
 12225  
 12226  type ProjectsLocationsServerTlsPoliciesListCall struct {
 12227  	s            *Service
 12228  	parent       string
 12229  	urlParams_   gensupport.URLParams
 12230  	ifNoneMatch_ string
 12231  	ctx_         context.Context
 12232  	header_      http.Header
 12233  }
 12234  
 12235  // List: Lists ServerTlsPolicies in a given project and location.
 12236  //
 12237  //   - parent: The project and location from which the ServerTlsPolicies should
 12238  //     be listed, specified in the format `projects/*/locations/{location}`.
 12239  func (r *ProjectsLocationsServerTlsPoliciesService) List(parent string) *ProjectsLocationsServerTlsPoliciesListCall {
 12240  	c := &ProjectsLocationsServerTlsPoliciesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12241  	c.parent = parent
 12242  	return c
 12243  }
 12244  
 12245  // PageSize sets the optional parameter "pageSize": Maximum number of
 12246  // ServerTlsPolicies to return per call.
 12247  func (c *ProjectsLocationsServerTlsPoliciesListCall) PageSize(pageSize int64) *ProjectsLocationsServerTlsPoliciesListCall {
 12248  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 12249  	return c
 12250  }
 12251  
 12252  // PageToken sets the optional parameter "pageToken": The value returned by the
 12253  // last `ListServerTlsPoliciesResponse` Indicates that this is a continuation
 12254  // of a prior `ListServerTlsPolicies` call, and that the system should return
 12255  // the next page of data.
 12256  func (c *ProjectsLocationsServerTlsPoliciesListCall) PageToken(pageToken string) *ProjectsLocationsServerTlsPoliciesListCall {
 12257  	c.urlParams_.Set("pageToken", pageToken)
 12258  	return c
 12259  }
 12260  
 12261  // Fields allows partial responses to be retrieved. See
 12262  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12263  // details.
 12264  func (c *ProjectsLocationsServerTlsPoliciesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsServerTlsPoliciesListCall {
 12265  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12266  	return c
 12267  }
 12268  
 12269  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 12270  // object's ETag matches the given value. This is useful for getting updates
 12271  // only after the object has changed since the last request.
 12272  func (c *ProjectsLocationsServerTlsPoliciesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsServerTlsPoliciesListCall {
 12273  	c.ifNoneMatch_ = entityTag
 12274  	return c
 12275  }
 12276  
 12277  // Context sets the context to be used in this call's Do method.
 12278  func (c *ProjectsLocationsServerTlsPoliciesListCall) Context(ctx context.Context) *ProjectsLocationsServerTlsPoliciesListCall {
 12279  	c.ctx_ = ctx
 12280  	return c
 12281  }
 12282  
 12283  // Header returns a http.Header that can be modified by the caller to add
 12284  // headers to the request.
 12285  func (c *ProjectsLocationsServerTlsPoliciesListCall) Header() http.Header {
 12286  	if c.header_ == nil {
 12287  		c.header_ = make(http.Header)
 12288  	}
 12289  	return c.header_
 12290  }
 12291  
 12292  func (c *ProjectsLocationsServerTlsPoliciesListCall) doRequest(alt string) (*http.Response, error) {
 12293  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 12294  	if c.ifNoneMatch_ != "" {
 12295  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 12296  	}
 12297  	var body io.Reader = nil
 12298  	c.urlParams_.Set("alt", alt)
 12299  	c.urlParams_.Set("prettyPrint", "false")
 12300  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/serverTlsPolicies")
 12301  	urls += "?" + c.urlParams_.Encode()
 12302  	req, err := http.NewRequest("GET", urls, body)
 12303  	if err != nil {
 12304  		return nil, err
 12305  	}
 12306  	req.Header = reqHeaders
 12307  	googleapi.Expand(req.URL, map[string]string{
 12308  		"parent": c.parent,
 12309  	})
 12310  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12311  }
 12312  
 12313  // Do executes the "networksecurity.projects.locations.serverTlsPolicies.list" call.
 12314  // Any non-2xx status code is an error. Response headers are in either
 12315  // *ListServerTlsPoliciesResponse.ServerResponse.Header or (if a response was
 12316  // returned at all) in error.(*googleapi.Error).Header. Use
 12317  // googleapi.IsNotModified to check whether the returned error was because
 12318  // http.StatusNotModified was returned.
 12319  func (c *ProjectsLocationsServerTlsPoliciesListCall) Do(opts ...googleapi.CallOption) (*ListServerTlsPoliciesResponse, error) {
 12320  	gensupport.SetOptions(c.urlParams_, opts...)
 12321  	res, err := c.doRequest("json")
 12322  	if res != nil && res.StatusCode == http.StatusNotModified {
 12323  		if res.Body != nil {
 12324  			res.Body.Close()
 12325  		}
 12326  		return nil, gensupport.WrapError(&googleapi.Error{
 12327  			Code:   res.StatusCode,
 12328  			Header: res.Header,
 12329  		})
 12330  	}
 12331  	if err != nil {
 12332  		return nil, err
 12333  	}
 12334  	defer googleapi.CloseBody(res)
 12335  	if err := googleapi.CheckResponse(res); err != nil {
 12336  		return nil, gensupport.WrapError(err)
 12337  	}
 12338  	ret := &ListServerTlsPoliciesResponse{
 12339  		ServerResponse: googleapi.ServerResponse{
 12340  			Header:         res.Header,
 12341  			HTTPStatusCode: res.StatusCode,
 12342  		},
 12343  	}
 12344  	target := &ret
 12345  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12346  		return nil, err
 12347  	}
 12348  	return ret, nil
 12349  }
 12350  
 12351  // Pages invokes f for each page of results.
 12352  // A non-nil error returned from f will halt the iteration.
 12353  // The provided context supersedes any context provided to the Context method.
 12354  func (c *ProjectsLocationsServerTlsPoliciesListCall) Pages(ctx context.Context, f func(*ListServerTlsPoliciesResponse) error) error {
 12355  	c.ctx_ = ctx
 12356  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 12357  	for {
 12358  		x, err := c.Do()
 12359  		if err != nil {
 12360  			return err
 12361  		}
 12362  		if err := f(x); err != nil {
 12363  			return err
 12364  		}
 12365  		if x.NextPageToken == "" {
 12366  			return nil
 12367  		}
 12368  		c.PageToken(x.NextPageToken)
 12369  	}
 12370  }
 12371  
 12372  type ProjectsLocationsServerTlsPoliciesPatchCall struct {
 12373  	s               *Service
 12374  	name            string
 12375  	servertlspolicy *ServerTlsPolicy
 12376  	urlParams_      gensupport.URLParams
 12377  	ctx_            context.Context
 12378  	header_         http.Header
 12379  }
 12380  
 12381  // Patch: Updates the parameters of a single ServerTlsPolicy.
 12382  //
 12383  //   - name: Name of the ServerTlsPolicy resource. It matches the pattern
 12384  //     `projects/*/locations/{location}/serverTlsPolicies/{server_tls_policy}`.
 12385  func (r *ProjectsLocationsServerTlsPoliciesService) Patch(name string, servertlspolicy *ServerTlsPolicy) *ProjectsLocationsServerTlsPoliciesPatchCall {
 12386  	c := &ProjectsLocationsServerTlsPoliciesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12387  	c.name = name
 12388  	c.servertlspolicy = servertlspolicy
 12389  	return c
 12390  }
 12391  
 12392  // UpdateMask sets the optional parameter "updateMask": Field mask is used to
 12393  // specify the fields to be overwritten in the ServerTlsPolicy resource by the
 12394  // update. The fields specified in the update_mask are relative to the
 12395  // resource, not the full request. A field will be overwritten if it is in the
 12396  // mask. If the user does not provide a mask then all fields will be
 12397  // overwritten.
 12398  func (c *ProjectsLocationsServerTlsPoliciesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsServerTlsPoliciesPatchCall {
 12399  	c.urlParams_.Set("updateMask", updateMask)
 12400  	return c
 12401  }
 12402  
 12403  // Fields allows partial responses to be retrieved. See
 12404  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12405  // details.
 12406  func (c *ProjectsLocationsServerTlsPoliciesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsServerTlsPoliciesPatchCall {
 12407  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12408  	return c
 12409  }
 12410  
 12411  // Context sets the context to be used in this call's Do method.
 12412  func (c *ProjectsLocationsServerTlsPoliciesPatchCall) Context(ctx context.Context) *ProjectsLocationsServerTlsPoliciesPatchCall {
 12413  	c.ctx_ = ctx
 12414  	return c
 12415  }
 12416  
 12417  // Header returns a http.Header that can be modified by the caller to add
 12418  // headers to the request.
 12419  func (c *ProjectsLocationsServerTlsPoliciesPatchCall) Header() http.Header {
 12420  	if c.header_ == nil {
 12421  		c.header_ = make(http.Header)
 12422  	}
 12423  	return c.header_
 12424  }
 12425  
 12426  func (c *ProjectsLocationsServerTlsPoliciesPatchCall) doRequest(alt string) (*http.Response, error) {
 12427  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 12428  	var body io.Reader = nil
 12429  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.servertlspolicy)
 12430  	if err != nil {
 12431  		return nil, err
 12432  	}
 12433  	c.urlParams_.Set("alt", alt)
 12434  	c.urlParams_.Set("prettyPrint", "false")
 12435  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 12436  	urls += "?" + c.urlParams_.Encode()
 12437  	req, err := http.NewRequest("PATCH", urls, body)
 12438  	if err != nil {
 12439  		return nil, err
 12440  	}
 12441  	req.Header = reqHeaders
 12442  	googleapi.Expand(req.URL, map[string]string{
 12443  		"name": c.name,
 12444  	})
 12445  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12446  }
 12447  
 12448  // Do executes the "networksecurity.projects.locations.serverTlsPolicies.patch" call.
 12449  // Any non-2xx status code is an error. Response headers are in either
 12450  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 12451  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 12452  // whether the returned error was because http.StatusNotModified was returned.
 12453  func (c *ProjectsLocationsServerTlsPoliciesPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 12454  	gensupport.SetOptions(c.urlParams_, opts...)
 12455  	res, err := c.doRequest("json")
 12456  	if res != nil && res.StatusCode == http.StatusNotModified {
 12457  		if res.Body != nil {
 12458  			res.Body.Close()
 12459  		}
 12460  		return nil, gensupport.WrapError(&googleapi.Error{
 12461  			Code:   res.StatusCode,
 12462  			Header: res.Header,
 12463  		})
 12464  	}
 12465  	if err != nil {
 12466  		return nil, err
 12467  	}
 12468  	defer googleapi.CloseBody(res)
 12469  	if err := googleapi.CheckResponse(res); err != nil {
 12470  		return nil, gensupport.WrapError(err)
 12471  	}
 12472  	ret := &Operation{
 12473  		ServerResponse: googleapi.ServerResponse{
 12474  			Header:         res.Header,
 12475  			HTTPStatusCode: res.StatusCode,
 12476  		},
 12477  	}
 12478  	target := &ret
 12479  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12480  		return nil, err
 12481  	}
 12482  	return ret, nil
 12483  }
 12484  
 12485  type ProjectsLocationsServerTlsPoliciesSetIamPolicyCall struct {
 12486  	s                              *Service
 12487  	resource                       string
 12488  	googleiamv1setiampolicyrequest *GoogleIamV1SetIamPolicyRequest
 12489  	urlParams_                     gensupport.URLParams
 12490  	ctx_                           context.Context
 12491  	header_                        http.Header
 12492  }
 12493  
 12494  // SetIamPolicy: Sets the access control policy on the specified resource.
 12495  // Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`,
 12496  // and `PERMISSION_DENIED` errors.
 12497  //
 12498  //   - resource: REQUIRED: The resource for which the policy is being specified.
 12499  //     See Resource names (https://cloud.google.com/apis/design/resource_names)
 12500  //     for the appropriate value for this field.
 12501  func (r *ProjectsLocationsServerTlsPoliciesService) SetIamPolicy(resource string, googleiamv1setiampolicyrequest *GoogleIamV1SetIamPolicyRequest) *ProjectsLocationsServerTlsPoliciesSetIamPolicyCall {
 12502  	c := &ProjectsLocationsServerTlsPoliciesSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12503  	c.resource = resource
 12504  	c.googleiamv1setiampolicyrequest = googleiamv1setiampolicyrequest
 12505  	return c
 12506  }
 12507  
 12508  // Fields allows partial responses to be retrieved. See
 12509  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12510  // details.
 12511  func (c *ProjectsLocationsServerTlsPoliciesSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsServerTlsPoliciesSetIamPolicyCall {
 12512  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12513  	return c
 12514  }
 12515  
 12516  // Context sets the context to be used in this call's Do method.
 12517  func (c *ProjectsLocationsServerTlsPoliciesSetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsServerTlsPoliciesSetIamPolicyCall {
 12518  	c.ctx_ = ctx
 12519  	return c
 12520  }
 12521  
 12522  // Header returns a http.Header that can be modified by the caller to add
 12523  // headers to the request.
 12524  func (c *ProjectsLocationsServerTlsPoliciesSetIamPolicyCall) Header() http.Header {
 12525  	if c.header_ == nil {
 12526  		c.header_ = make(http.Header)
 12527  	}
 12528  	return c.header_
 12529  }
 12530  
 12531  func (c *ProjectsLocationsServerTlsPoliciesSetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
 12532  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 12533  	var body io.Reader = nil
 12534  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleiamv1setiampolicyrequest)
 12535  	if err != nil {
 12536  		return nil, err
 12537  	}
 12538  	c.urlParams_.Set("alt", alt)
 12539  	c.urlParams_.Set("prettyPrint", "false")
 12540  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:setIamPolicy")
 12541  	urls += "?" + c.urlParams_.Encode()
 12542  	req, err := http.NewRequest("POST", urls, body)
 12543  	if err != nil {
 12544  		return nil, err
 12545  	}
 12546  	req.Header = reqHeaders
 12547  	googleapi.Expand(req.URL, map[string]string{
 12548  		"resource": c.resource,
 12549  	})
 12550  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12551  }
 12552  
 12553  // Do executes the "networksecurity.projects.locations.serverTlsPolicies.setIamPolicy" call.
 12554  // Any non-2xx status code is an error. Response headers are in either
 12555  // *GoogleIamV1Policy.ServerResponse.Header or (if a response was returned at
 12556  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 12557  // check whether the returned error was because http.StatusNotModified was
 12558  // returned.
 12559  func (c *ProjectsLocationsServerTlsPoliciesSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1Policy, error) {
 12560  	gensupport.SetOptions(c.urlParams_, opts...)
 12561  	res, err := c.doRequest("json")
 12562  	if res != nil && res.StatusCode == http.StatusNotModified {
 12563  		if res.Body != nil {
 12564  			res.Body.Close()
 12565  		}
 12566  		return nil, gensupport.WrapError(&googleapi.Error{
 12567  			Code:   res.StatusCode,
 12568  			Header: res.Header,
 12569  		})
 12570  	}
 12571  	if err != nil {
 12572  		return nil, err
 12573  	}
 12574  	defer googleapi.CloseBody(res)
 12575  	if err := googleapi.CheckResponse(res); err != nil {
 12576  		return nil, gensupport.WrapError(err)
 12577  	}
 12578  	ret := &GoogleIamV1Policy{
 12579  		ServerResponse: googleapi.ServerResponse{
 12580  			Header:         res.Header,
 12581  			HTTPStatusCode: res.StatusCode,
 12582  		},
 12583  	}
 12584  	target := &ret
 12585  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12586  		return nil, err
 12587  	}
 12588  	return ret, nil
 12589  }
 12590  
 12591  type ProjectsLocationsServerTlsPoliciesTestIamPermissionsCall struct {
 12592  	s                                    *Service
 12593  	resource                             string
 12594  	googleiamv1testiampermissionsrequest *GoogleIamV1TestIamPermissionsRequest
 12595  	urlParams_                           gensupport.URLParams
 12596  	ctx_                                 context.Context
 12597  	header_                              http.Header
 12598  }
 12599  
 12600  // TestIamPermissions: Returns permissions that a caller has on the specified
 12601  // resource. If the resource does not exist, this will return an empty set of
 12602  // permissions, not a `NOT_FOUND` error. Note: This operation is designed to be
 12603  // used for building permission-aware UIs and command-line tools, not for
 12604  // authorization checking. This operation may "fail open" without warning.
 12605  //
 12606  //   - resource: REQUIRED: The resource for which the policy detail is being
 12607  //     requested. See Resource names
 12608  //     (https://cloud.google.com/apis/design/resource_names) for the appropriate
 12609  //     value for this field.
 12610  func (r *ProjectsLocationsServerTlsPoliciesService) TestIamPermissions(resource string, googleiamv1testiampermissionsrequest *GoogleIamV1TestIamPermissionsRequest) *ProjectsLocationsServerTlsPoliciesTestIamPermissionsCall {
 12611  	c := &ProjectsLocationsServerTlsPoliciesTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12612  	c.resource = resource
 12613  	c.googleiamv1testiampermissionsrequest = googleiamv1testiampermissionsrequest
 12614  	return c
 12615  }
 12616  
 12617  // Fields allows partial responses to be retrieved. See
 12618  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12619  // details.
 12620  func (c *ProjectsLocationsServerTlsPoliciesTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsLocationsServerTlsPoliciesTestIamPermissionsCall {
 12621  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12622  	return c
 12623  }
 12624  
 12625  // Context sets the context to be used in this call's Do method.
 12626  func (c *ProjectsLocationsServerTlsPoliciesTestIamPermissionsCall) Context(ctx context.Context) *ProjectsLocationsServerTlsPoliciesTestIamPermissionsCall {
 12627  	c.ctx_ = ctx
 12628  	return c
 12629  }
 12630  
 12631  // Header returns a http.Header that can be modified by the caller to add
 12632  // headers to the request.
 12633  func (c *ProjectsLocationsServerTlsPoliciesTestIamPermissionsCall) Header() http.Header {
 12634  	if c.header_ == nil {
 12635  		c.header_ = make(http.Header)
 12636  	}
 12637  	return c.header_
 12638  }
 12639  
 12640  func (c *ProjectsLocationsServerTlsPoliciesTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) {
 12641  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 12642  	var body io.Reader = nil
 12643  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleiamv1testiampermissionsrequest)
 12644  	if err != nil {
 12645  		return nil, err
 12646  	}
 12647  	c.urlParams_.Set("alt", alt)
 12648  	c.urlParams_.Set("prettyPrint", "false")
 12649  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:testIamPermissions")
 12650  	urls += "?" + c.urlParams_.Encode()
 12651  	req, err := http.NewRequest("POST", urls, body)
 12652  	if err != nil {
 12653  		return nil, err
 12654  	}
 12655  	req.Header = reqHeaders
 12656  	googleapi.Expand(req.URL, map[string]string{
 12657  		"resource": c.resource,
 12658  	})
 12659  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12660  }
 12661  
 12662  // Do executes the "networksecurity.projects.locations.serverTlsPolicies.testIamPermissions" call.
 12663  // Any non-2xx status code is an error. Response headers are in either
 12664  // *GoogleIamV1TestIamPermissionsResponse.ServerResponse.Header or (if a
 12665  // response was returned at all) in error.(*googleapi.Error).Header. Use
 12666  // googleapi.IsNotModified to check whether the returned error was because
 12667  // http.StatusNotModified was returned.
 12668  func (c *ProjectsLocationsServerTlsPoliciesTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1TestIamPermissionsResponse, error) {
 12669  	gensupport.SetOptions(c.urlParams_, opts...)
 12670  	res, err := c.doRequest("json")
 12671  	if res != nil && res.StatusCode == http.StatusNotModified {
 12672  		if res.Body != nil {
 12673  			res.Body.Close()
 12674  		}
 12675  		return nil, gensupport.WrapError(&googleapi.Error{
 12676  			Code:   res.StatusCode,
 12677  			Header: res.Header,
 12678  		})
 12679  	}
 12680  	if err != nil {
 12681  		return nil, err
 12682  	}
 12683  	defer googleapi.CloseBody(res)
 12684  	if err := googleapi.CheckResponse(res); err != nil {
 12685  		return nil, gensupport.WrapError(err)
 12686  	}
 12687  	ret := &GoogleIamV1TestIamPermissionsResponse{
 12688  		ServerResponse: googleapi.ServerResponse{
 12689  			Header:         res.Header,
 12690  			HTTPStatusCode: res.StatusCode,
 12691  		},
 12692  	}
 12693  	target := &ret
 12694  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12695  		return nil, err
 12696  	}
 12697  	return ret, nil
 12698  }
 12699  
 12700  type ProjectsLocationsTlsInspectionPoliciesCreateCall struct {
 12701  	s                   *Service
 12702  	parent              string
 12703  	tlsinspectionpolicy *TlsInspectionPolicy
 12704  	urlParams_          gensupport.URLParams
 12705  	ctx_                context.Context
 12706  	header_             http.Header
 12707  }
 12708  
 12709  // Create: Creates a new TlsInspectionPolicy in a given project and location.
 12710  //
 12711  //   - parent: The parent resource of the TlsInspectionPolicy. Must be in the
 12712  //     format `projects/{project}/locations/{location}`.
 12713  func (r *ProjectsLocationsTlsInspectionPoliciesService) Create(parent string, tlsinspectionpolicy *TlsInspectionPolicy) *ProjectsLocationsTlsInspectionPoliciesCreateCall {
 12714  	c := &ProjectsLocationsTlsInspectionPoliciesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12715  	c.parent = parent
 12716  	c.tlsinspectionpolicy = tlsinspectionpolicy
 12717  	return c
 12718  }
 12719  
 12720  // TlsInspectionPolicyId sets the optional parameter "tlsInspectionPolicyId":
 12721  // Required. Short name of the TlsInspectionPolicy resource to be created. This
 12722  // value should be 1-63 characters long, containing only letters, numbers,
 12723  // hyphens, and underscores, and should not start with a number. E.g.
 12724  // "tls_inspection_policy1".
 12725  func (c *ProjectsLocationsTlsInspectionPoliciesCreateCall) TlsInspectionPolicyId(tlsInspectionPolicyId string) *ProjectsLocationsTlsInspectionPoliciesCreateCall {
 12726  	c.urlParams_.Set("tlsInspectionPolicyId", tlsInspectionPolicyId)
 12727  	return c
 12728  }
 12729  
 12730  // Fields allows partial responses to be retrieved. See
 12731  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12732  // details.
 12733  func (c *ProjectsLocationsTlsInspectionPoliciesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsTlsInspectionPoliciesCreateCall {
 12734  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12735  	return c
 12736  }
 12737  
 12738  // Context sets the context to be used in this call's Do method.
 12739  func (c *ProjectsLocationsTlsInspectionPoliciesCreateCall) Context(ctx context.Context) *ProjectsLocationsTlsInspectionPoliciesCreateCall {
 12740  	c.ctx_ = ctx
 12741  	return c
 12742  }
 12743  
 12744  // Header returns a http.Header that can be modified by the caller to add
 12745  // headers to the request.
 12746  func (c *ProjectsLocationsTlsInspectionPoliciesCreateCall) Header() http.Header {
 12747  	if c.header_ == nil {
 12748  		c.header_ = make(http.Header)
 12749  	}
 12750  	return c.header_
 12751  }
 12752  
 12753  func (c *ProjectsLocationsTlsInspectionPoliciesCreateCall) doRequest(alt string) (*http.Response, error) {
 12754  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 12755  	var body io.Reader = nil
 12756  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.tlsinspectionpolicy)
 12757  	if err != nil {
 12758  		return nil, err
 12759  	}
 12760  	c.urlParams_.Set("alt", alt)
 12761  	c.urlParams_.Set("prettyPrint", "false")
 12762  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/tlsInspectionPolicies")
 12763  	urls += "?" + c.urlParams_.Encode()
 12764  	req, err := http.NewRequest("POST", urls, body)
 12765  	if err != nil {
 12766  		return nil, err
 12767  	}
 12768  	req.Header = reqHeaders
 12769  	googleapi.Expand(req.URL, map[string]string{
 12770  		"parent": c.parent,
 12771  	})
 12772  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12773  }
 12774  
 12775  // Do executes the "networksecurity.projects.locations.tlsInspectionPolicies.create" call.
 12776  // Any non-2xx status code is an error. Response headers are in either
 12777  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 12778  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 12779  // whether the returned error was because http.StatusNotModified was returned.
 12780  func (c *ProjectsLocationsTlsInspectionPoliciesCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 12781  	gensupport.SetOptions(c.urlParams_, opts...)
 12782  	res, err := c.doRequest("json")
 12783  	if res != nil && res.StatusCode == http.StatusNotModified {
 12784  		if res.Body != nil {
 12785  			res.Body.Close()
 12786  		}
 12787  		return nil, gensupport.WrapError(&googleapi.Error{
 12788  			Code:   res.StatusCode,
 12789  			Header: res.Header,
 12790  		})
 12791  	}
 12792  	if err != nil {
 12793  		return nil, err
 12794  	}
 12795  	defer googleapi.CloseBody(res)
 12796  	if err := googleapi.CheckResponse(res); err != nil {
 12797  		return nil, gensupport.WrapError(err)
 12798  	}
 12799  	ret := &Operation{
 12800  		ServerResponse: googleapi.ServerResponse{
 12801  			Header:         res.Header,
 12802  			HTTPStatusCode: res.StatusCode,
 12803  		},
 12804  	}
 12805  	target := &ret
 12806  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12807  		return nil, err
 12808  	}
 12809  	return ret, nil
 12810  }
 12811  
 12812  type ProjectsLocationsTlsInspectionPoliciesDeleteCall struct {
 12813  	s          *Service
 12814  	name       string
 12815  	urlParams_ gensupport.URLParams
 12816  	ctx_       context.Context
 12817  	header_    http.Header
 12818  }
 12819  
 12820  // Delete: Deletes a single TlsInspectionPolicy.
 12821  //
 12822  //   - name: A name of the TlsInspectionPolicy to delete. Must be in the format
 12823  //     `projects/{project}/locations/{location}/tlsInspectionPolicies/{tls_inspect
 12824  //     ion_policy}`.
 12825  func (r *ProjectsLocationsTlsInspectionPoliciesService) Delete(name string) *ProjectsLocationsTlsInspectionPoliciesDeleteCall {
 12826  	c := &ProjectsLocationsTlsInspectionPoliciesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12827  	c.name = name
 12828  	return c
 12829  }
 12830  
 12831  // Force sets the optional parameter "force": If set to true, any rules for
 12832  // this TlsInspectionPolicy will also be deleted. (Otherwise, the request will
 12833  // only work if the TlsInspectionPolicy has no rules.)
 12834  func (c *ProjectsLocationsTlsInspectionPoliciesDeleteCall) Force(force bool) *ProjectsLocationsTlsInspectionPoliciesDeleteCall {
 12835  	c.urlParams_.Set("force", fmt.Sprint(force))
 12836  	return c
 12837  }
 12838  
 12839  // Fields allows partial responses to be retrieved. See
 12840  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12841  // details.
 12842  func (c *ProjectsLocationsTlsInspectionPoliciesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsTlsInspectionPoliciesDeleteCall {
 12843  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12844  	return c
 12845  }
 12846  
 12847  // Context sets the context to be used in this call's Do method.
 12848  func (c *ProjectsLocationsTlsInspectionPoliciesDeleteCall) Context(ctx context.Context) *ProjectsLocationsTlsInspectionPoliciesDeleteCall {
 12849  	c.ctx_ = ctx
 12850  	return c
 12851  }
 12852  
 12853  // Header returns a http.Header that can be modified by the caller to add
 12854  // headers to the request.
 12855  func (c *ProjectsLocationsTlsInspectionPoliciesDeleteCall) Header() http.Header {
 12856  	if c.header_ == nil {
 12857  		c.header_ = make(http.Header)
 12858  	}
 12859  	return c.header_
 12860  }
 12861  
 12862  func (c *ProjectsLocationsTlsInspectionPoliciesDeleteCall) doRequest(alt string) (*http.Response, error) {
 12863  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 12864  	var body io.Reader = nil
 12865  	c.urlParams_.Set("alt", alt)
 12866  	c.urlParams_.Set("prettyPrint", "false")
 12867  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 12868  	urls += "?" + c.urlParams_.Encode()
 12869  	req, err := http.NewRequest("DELETE", urls, body)
 12870  	if err != nil {
 12871  		return nil, err
 12872  	}
 12873  	req.Header = reqHeaders
 12874  	googleapi.Expand(req.URL, map[string]string{
 12875  		"name": c.name,
 12876  	})
 12877  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12878  }
 12879  
 12880  // Do executes the "networksecurity.projects.locations.tlsInspectionPolicies.delete" call.
 12881  // Any non-2xx status code is an error. Response headers are in either
 12882  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 12883  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 12884  // whether the returned error was because http.StatusNotModified was returned.
 12885  func (c *ProjectsLocationsTlsInspectionPoliciesDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 12886  	gensupport.SetOptions(c.urlParams_, opts...)
 12887  	res, err := c.doRequest("json")
 12888  	if res != nil && res.StatusCode == http.StatusNotModified {
 12889  		if res.Body != nil {
 12890  			res.Body.Close()
 12891  		}
 12892  		return nil, gensupport.WrapError(&googleapi.Error{
 12893  			Code:   res.StatusCode,
 12894  			Header: res.Header,
 12895  		})
 12896  	}
 12897  	if err != nil {
 12898  		return nil, err
 12899  	}
 12900  	defer googleapi.CloseBody(res)
 12901  	if err := googleapi.CheckResponse(res); err != nil {
 12902  		return nil, gensupport.WrapError(err)
 12903  	}
 12904  	ret := &Operation{
 12905  		ServerResponse: googleapi.ServerResponse{
 12906  			Header:         res.Header,
 12907  			HTTPStatusCode: res.StatusCode,
 12908  		},
 12909  	}
 12910  	target := &ret
 12911  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12912  		return nil, err
 12913  	}
 12914  	return ret, nil
 12915  }
 12916  
 12917  type ProjectsLocationsTlsInspectionPoliciesGetCall struct {
 12918  	s            *Service
 12919  	name         string
 12920  	urlParams_   gensupport.URLParams
 12921  	ifNoneMatch_ string
 12922  	ctx_         context.Context
 12923  	header_      http.Header
 12924  }
 12925  
 12926  // Get: Gets details of a single TlsInspectionPolicy.
 12927  //
 12928  //   - name: A name of the TlsInspectionPolicy to get. Must be in the format
 12929  //     `projects/{project}/locations/{location}/tlsInspectionPolicies/{tls_inspect
 12930  //     ion_policy}`.
 12931  func (r *ProjectsLocationsTlsInspectionPoliciesService) Get(name string) *ProjectsLocationsTlsInspectionPoliciesGetCall {
 12932  	c := &ProjectsLocationsTlsInspectionPoliciesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12933  	c.name = name
 12934  	return c
 12935  }
 12936  
 12937  // Fields allows partial responses to be retrieved. See
 12938  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12939  // details.
 12940  func (c *ProjectsLocationsTlsInspectionPoliciesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsTlsInspectionPoliciesGetCall {
 12941  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12942  	return c
 12943  }
 12944  
 12945  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 12946  // object's ETag matches the given value. This is useful for getting updates
 12947  // only after the object has changed since the last request.
 12948  func (c *ProjectsLocationsTlsInspectionPoliciesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsTlsInspectionPoliciesGetCall {
 12949  	c.ifNoneMatch_ = entityTag
 12950  	return c
 12951  }
 12952  
 12953  // Context sets the context to be used in this call's Do method.
 12954  func (c *ProjectsLocationsTlsInspectionPoliciesGetCall) Context(ctx context.Context) *ProjectsLocationsTlsInspectionPoliciesGetCall {
 12955  	c.ctx_ = ctx
 12956  	return c
 12957  }
 12958  
 12959  // Header returns a http.Header that can be modified by the caller to add
 12960  // headers to the request.
 12961  func (c *ProjectsLocationsTlsInspectionPoliciesGetCall) Header() http.Header {
 12962  	if c.header_ == nil {
 12963  		c.header_ = make(http.Header)
 12964  	}
 12965  	return c.header_
 12966  }
 12967  
 12968  func (c *ProjectsLocationsTlsInspectionPoliciesGetCall) doRequest(alt string) (*http.Response, error) {
 12969  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 12970  	if c.ifNoneMatch_ != "" {
 12971  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 12972  	}
 12973  	var body io.Reader = nil
 12974  	c.urlParams_.Set("alt", alt)
 12975  	c.urlParams_.Set("prettyPrint", "false")
 12976  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 12977  	urls += "?" + c.urlParams_.Encode()
 12978  	req, err := http.NewRequest("GET", urls, body)
 12979  	if err != nil {
 12980  		return nil, err
 12981  	}
 12982  	req.Header = reqHeaders
 12983  	googleapi.Expand(req.URL, map[string]string{
 12984  		"name": c.name,
 12985  	})
 12986  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12987  }
 12988  
 12989  // Do executes the "networksecurity.projects.locations.tlsInspectionPolicies.get" call.
 12990  // Any non-2xx status code is an error. Response headers are in either
 12991  // *TlsInspectionPolicy.ServerResponse.Header or (if a response was returned at
 12992  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 12993  // check whether the returned error was because http.StatusNotModified was
 12994  // returned.
 12995  func (c *ProjectsLocationsTlsInspectionPoliciesGetCall) Do(opts ...googleapi.CallOption) (*TlsInspectionPolicy, error) {
 12996  	gensupport.SetOptions(c.urlParams_, opts...)
 12997  	res, err := c.doRequest("json")
 12998  	if res != nil && res.StatusCode == http.StatusNotModified {
 12999  		if res.Body != nil {
 13000  			res.Body.Close()
 13001  		}
 13002  		return nil, gensupport.WrapError(&googleapi.Error{
 13003  			Code:   res.StatusCode,
 13004  			Header: res.Header,
 13005  		})
 13006  	}
 13007  	if err != nil {
 13008  		return nil, err
 13009  	}
 13010  	defer googleapi.CloseBody(res)
 13011  	if err := googleapi.CheckResponse(res); err != nil {
 13012  		return nil, gensupport.WrapError(err)
 13013  	}
 13014  	ret := &TlsInspectionPolicy{
 13015  		ServerResponse: googleapi.ServerResponse{
 13016  			Header:         res.Header,
 13017  			HTTPStatusCode: res.StatusCode,
 13018  		},
 13019  	}
 13020  	target := &ret
 13021  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13022  		return nil, err
 13023  	}
 13024  	return ret, nil
 13025  }
 13026  
 13027  type ProjectsLocationsTlsInspectionPoliciesListCall struct {
 13028  	s            *Service
 13029  	parent       string
 13030  	urlParams_   gensupport.URLParams
 13031  	ifNoneMatch_ string
 13032  	ctx_         context.Context
 13033  	header_      http.Header
 13034  }
 13035  
 13036  // List: Lists TlsInspectionPolicies in a given project and location.
 13037  //
 13038  //   - parent: The project and location from which the TlsInspectionPolicies
 13039  //     should be listed, specified in the format
 13040  //     `projects/{project}/locations/{location}`.
 13041  func (r *ProjectsLocationsTlsInspectionPoliciesService) List(parent string) *ProjectsLocationsTlsInspectionPoliciesListCall {
 13042  	c := &ProjectsLocationsTlsInspectionPoliciesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13043  	c.parent = parent
 13044  	return c
 13045  }
 13046  
 13047  // PageSize sets the optional parameter "pageSize": Maximum number of
 13048  // TlsInspectionPolicies to return per call.
 13049  func (c *ProjectsLocationsTlsInspectionPoliciesListCall) PageSize(pageSize int64) *ProjectsLocationsTlsInspectionPoliciesListCall {
 13050  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 13051  	return c
 13052  }
 13053  
 13054  // PageToken sets the optional parameter "pageToken": The value returned by the
 13055  // last 'ListTlsInspectionPoliciesResponse' Indicates that this is a
 13056  // continuation of a prior 'ListTlsInspectionPolicies' call, and that the
 13057  // system should return the next page of data.
 13058  func (c *ProjectsLocationsTlsInspectionPoliciesListCall) PageToken(pageToken string) *ProjectsLocationsTlsInspectionPoliciesListCall {
 13059  	c.urlParams_.Set("pageToken", pageToken)
 13060  	return c
 13061  }
 13062  
 13063  // Fields allows partial responses to be retrieved. See
 13064  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13065  // details.
 13066  func (c *ProjectsLocationsTlsInspectionPoliciesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsTlsInspectionPoliciesListCall {
 13067  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13068  	return c
 13069  }
 13070  
 13071  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 13072  // object's ETag matches the given value. This is useful for getting updates
 13073  // only after the object has changed since the last request.
 13074  func (c *ProjectsLocationsTlsInspectionPoliciesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsTlsInspectionPoliciesListCall {
 13075  	c.ifNoneMatch_ = entityTag
 13076  	return c
 13077  }
 13078  
 13079  // Context sets the context to be used in this call's Do method.
 13080  func (c *ProjectsLocationsTlsInspectionPoliciesListCall) Context(ctx context.Context) *ProjectsLocationsTlsInspectionPoliciesListCall {
 13081  	c.ctx_ = ctx
 13082  	return c
 13083  }
 13084  
 13085  // Header returns a http.Header that can be modified by the caller to add
 13086  // headers to the request.
 13087  func (c *ProjectsLocationsTlsInspectionPoliciesListCall) Header() http.Header {
 13088  	if c.header_ == nil {
 13089  		c.header_ = make(http.Header)
 13090  	}
 13091  	return c.header_
 13092  }
 13093  
 13094  func (c *ProjectsLocationsTlsInspectionPoliciesListCall) doRequest(alt string) (*http.Response, error) {
 13095  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 13096  	if c.ifNoneMatch_ != "" {
 13097  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 13098  	}
 13099  	var body io.Reader = nil
 13100  	c.urlParams_.Set("alt", alt)
 13101  	c.urlParams_.Set("prettyPrint", "false")
 13102  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/tlsInspectionPolicies")
 13103  	urls += "?" + c.urlParams_.Encode()
 13104  	req, err := http.NewRequest("GET", urls, body)
 13105  	if err != nil {
 13106  		return nil, err
 13107  	}
 13108  	req.Header = reqHeaders
 13109  	googleapi.Expand(req.URL, map[string]string{
 13110  		"parent": c.parent,
 13111  	})
 13112  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13113  }
 13114  
 13115  // Do executes the "networksecurity.projects.locations.tlsInspectionPolicies.list" call.
 13116  // Any non-2xx status code is an error. Response headers are in either
 13117  // *ListTlsInspectionPoliciesResponse.ServerResponse.Header or (if a response
 13118  // was returned at all) in error.(*googleapi.Error).Header. Use
 13119  // googleapi.IsNotModified to check whether the returned error was because
 13120  // http.StatusNotModified was returned.
 13121  func (c *ProjectsLocationsTlsInspectionPoliciesListCall) Do(opts ...googleapi.CallOption) (*ListTlsInspectionPoliciesResponse, error) {
 13122  	gensupport.SetOptions(c.urlParams_, opts...)
 13123  	res, err := c.doRequest("json")
 13124  	if res != nil && res.StatusCode == http.StatusNotModified {
 13125  		if res.Body != nil {
 13126  			res.Body.Close()
 13127  		}
 13128  		return nil, gensupport.WrapError(&googleapi.Error{
 13129  			Code:   res.StatusCode,
 13130  			Header: res.Header,
 13131  		})
 13132  	}
 13133  	if err != nil {
 13134  		return nil, err
 13135  	}
 13136  	defer googleapi.CloseBody(res)
 13137  	if err := googleapi.CheckResponse(res); err != nil {
 13138  		return nil, gensupport.WrapError(err)
 13139  	}
 13140  	ret := &ListTlsInspectionPoliciesResponse{
 13141  		ServerResponse: googleapi.ServerResponse{
 13142  			Header:         res.Header,
 13143  			HTTPStatusCode: res.StatusCode,
 13144  		},
 13145  	}
 13146  	target := &ret
 13147  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13148  		return nil, err
 13149  	}
 13150  	return ret, nil
 13151  }
 13152  
 13153  // Pages invokes f for each page of results.
 13154  // A non-nil error returned from f will halt the iteration.
 13155  // The provided context supersedes any context provided to the Context method.
 13156  func (c *ProjectsLocationsTlsInspectionPoliciesListCall) Pages(ctx context.Context, f func(*ListTlsInspectionPoliciesResponse) error) error {
 13157  	c.ctx_ = ctx
 13158  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 13159  	for {
 13160  		x, err := c.Do()
 13161  		if err != nil {
 13162  			return err
 13163  		}
 13164  		if err := f(x); err != nil {
 13165  			return err
 13166  		}
 13167  		if x.NextPageToken == "" {
 13168  			return nil
 13169  		}
 13170  		c.PageToken(x.NextPageToken)
 13171  	}
 13172  }
 13173  
 13174  type ProjectsLocationsTlsInspectionPoliciesPatchCall struct {
 13175  	s                   *Service
 13176  	name                string
 13177  	tlsinspectionpolicy *TlsInspectionPolicy
 13178  	urlParams_          gensupport.URLParams
 13179  	ctx_                context.Context
 13180  	header_             http.Header
 13181  }
 13182  
 13183  // Patch: Updates the parameters of a single TlsInspectionPolicy.
 13184  //
 13185  //   - name: Name of the resource. Name is of the form
 13186  //     projects/{project}/locations/{location}/tlsInspectionPolicies/{tls_inspecti
 13187  //     on_policy} tls_inspection_policy should match the pattern:(^a-z
 13188  //     ([a-z0-9-]{0,61}[a-z0-9])?$).
 13189  func (r *ProjectsLocationsTlsInspectionPoliciesService) Patch(name string, tlsinspectionpolicy *TlsInspectionPolicy) *ProjectsLocationsTlsInspectionPoliciesPatchCall {
 13190  	c := &ProjectsLocationsTlsInspectionPoliciesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13191  	c.name = name
 13192  	c.tlsinspectionpolicy = tlsinspectionpolicy
 13193  	return c
 13194  }
 13195  
 13196  // UpdateMask sets the optional parameter "updateMask": Field mask is used to
 13197  // specify the fields to be overwritten in the TlsInspectionPolicy resource by
 13198  // the update. The fields specified in the update_mask are relative to the
 13199  // resource, not the full request. A field will be overwritten if it is in the
 13200  // mask. If the user does not provide a mask then all fields will be
 13201  // overwritten.
 13202  func (c *ProjectsLocationsTlsInspectionPoliciesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsTlsInspectionPoliciesPatchCall {
 13203  	c.urlParams_.Set("updateMask", updateMask)
 13204  	return c
 13205  }
 13206  
 13207  // Fields allows partial responses to be retrieved. See
 13208  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13209  // details.
 13210  func (c *ProjectsLocationsTlsInspectionPoliciesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsTlsInspectionPoliciesPatchCall {
 13211  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13212  	return c
 13213  }
 13214  
 13215  // Context sets the context to be used in this call's Do method.
 13216  func (c *ProjectsLocationsTlsInspectionPoliciesPatchCall) Context(ctx context.Context) *ProjectsLocationsTlsInspectionPoliciesPatchCall {
 13217  	c.ctx_ = ctx
 13218  	return c
 13219  }
 13220  
 13221  // Header returns a http.Header that can be modified by the caller to add
 13222  // headers to the request.
 13223  func (c *ProjectsLocationsTlsInspectionPoliciesPatchCall) Header() http.Header {
 13224  	if c.header_ == nil {
 13225  		c.header_ = make(http.Header)
 13226  	}
 13227  	return c.header_
 13228  }
 13229  
 13230  func (c *ProjectsLocationsTlsInspectionPoliciesPatchCall) doRequest(alt string) (*http.Response, error) {
 13231  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 13232  	var body io.Reader = nil
 13233  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.tlsinspectionpolicy)
 13234  	if err != nil {
 13235  		return nil, err
 13236  	}
 13237  	c.urlParams_.Set("alt", alt)
 13238  	c.urlParams_.Set("prettyPrint", "false")
 13239  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 13240  	urls += "?" + c.urlParams_.Encode()
 13241  	req, err := http.NewRequest("PATCH", urls, body)
 13242  	if err != nil {
 13243  		return nil, err
 13244  	}
 13245  	req.Header = reqHeaders
 13246  	googleapi.Expand(req.URL, map[string]string{
 13247  		"name": c.name,
 13248  	})
 13249  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13250  }
 13251  
 13252  // Do executes the "networksecurity.projects.locations.tlsInspectionPolicies.patch" call.
 13253  // Any non-2xx status code is an error. Response headers are in either
 13254  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 13255  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 13256  // whether the returned error was because http.StatusNotModified was returned.
 13257  func (c *ProjectsLocationsTlsInspectionPoliciesPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 13258  	gensupport.SetOptions(c.urlParams_, opts...)
 13259  	res, err := c.doRequest("json")
 13260  	if res != nil && res.StatusCode == http.StatusNotModified {
 13261  		if res.Body != nil {
 13262  			res.Body.Close()
 13263  		}
 13264  		return nil, gensupport.WrapError(&googleapi.Error{
 13265  			Code:   res.StatusCode,
 13266  			Header: res.Header,
 13267  		})
 13268  	}
 13269  	if err != nil {
 13270  		return nil, err
 13271  	}
 13272  	defer googleapi.CloseBody(res)
 13273  	if err := googleapi.CheckResponse(res); err != nil {
 13274  		return nil, gensupport.WrapError(err)
 13275  	}
 13276  	ret := &Operation{
 13277  		ServerResponse: googleapi.ServerResponse{
 13278  			Header:         res.Header,
 13279  			HTTPStatusCode: res.StatusCode,
 13280  		},
 13281  	}
 13282  	target := &ret
 13283  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13284  		return nil, err
 13285  	}
 13286  	return ret, nil
 13287  }
 13288  
 13289  type ProjectsLocationsUrlListsCreateCall struct {
 13290  	s          *Service
 13291  	parent     string
 13292  	urllist    *UrlList
 13293  	urlParams_ gensupport.URLParams
 13294  	ctx_       context.Context
 13295  	header_    http.Header
 13296  }
 13297  
 13298  // Create: Creates a new UrlList in a given project and location.
 13299  //
 13300  //   - parent: The parent resource of the UrlList. Must be in the format
 13301  //     `projects/*/locations/{location}`.
 13302  func (r *ProjectsLocationsUrlListsService) Create(parent string, urllist *UrlList) *ProjectsLocationsUrlListsCreateCall {
 13303  	c := &ProjectsLocationsUrlListsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13304  	c.parent = parent
 13305  	c.urllist = urllist
 13306  	return c
 13307  }
 13308  
 13309  // UrlListId sets the optional parameter "urlListId": Required. Short name of
 13310  // the UrlList resource to be created. This value should be 1-63 characters
 13311  // long, containing only letters, numbers, hyphens, and underscores, and should
 13312  // not start with a number. E.g. "url_list".
 13313  func (c *ProjectsLocationsUrlListsCreateCall) UrlListId(urlListId string) *ProjectsLocationsUrlListsCreateCall {
 13314  	c.urlParams_.Set("urlListId", urlListId)
 13315  	return c
 13316  }
 13317  
 13318  // Fields allows partial responses to be retrieved. See
 13319  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13320  // details.
 13321  func (c *ProjectsLocationsUrlListsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsUrlListsCreateCall {
 13322  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13323  	return c
 13324  }
 13325  
 13326  // Context sets the context to be used in this call's Do method.
 13327  func (c *ProjectsLocationsUrlListsCreateCall) Context(ctx context.Context) *ProjectsLocationsUrlListsCreateCall {
 13328  	c.ctx_ = ctx
 13329  	return c
 13330  }
 13331  
 13332  // Header returns a http.Header that can be modified by the caller to add
 13333  // headers to the request.
 13334  func (c *ProjectsLocationsUrlListsCreateCall) Header() http.Header {
 13335  	if c.header_ == nil {
 13336  		c.header_ = make(http.Header)
 13337  	}
 13338  	return c.header_
 13339  }
 13340  
 13341  func (c *ProjectsLocationsUrlListsCreateCall) doRequest(alt string) (*http.Response, error) {
 13342  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 13343  	var body io.Reader = nil
 13344  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.urllist)
 13345  	if err != nil {
 13346  		return nil, err
 13347  	}
 13348  	c.urlParams_.Set("alt", alt)
 13349  	c.urlParams_.Set("prettyPrint", "false")
 13350  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/urlLists")
 13351  	urls += "?" + c.urlParams_.Encode()
 13352  	req, err := http.NewRequest("POST", urls, body)
 13353  	if err != nil {
 13354  		return nil, err
 13355  	}
 13356  	req.Header = reqHeaders
 13357  	googleapi.Expand(req.URL, map[string]string{
 13358  		"parent": c.parent,
 13359  	})
 13360  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13361  }
 13362  
 13363  // Do executes the "networksecurity.projects.locations.urlLists.create" call.
 13364  // Any non-2xx status code is an error. Response headers are in either
 13365  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 13366  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 13367  // whether the returned error was because http.StatusNotModified was returned.
 13368  func (c *ProjectsLocationsUrlListsCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 13369  	gensupport.SetOptions(c.urlParams_, opts...)
 13370  	res, err := c.doRequest("json")
 13371  	if res != nil && res.StatusCode == http.StatusNotModified {
 13372  		if res.Body != nil {
 13373  			res.Body.Close()
 13374  		}
 13375  		return nil, gensupport.WrapError(&googleapi.Error{
 13376  			Code:   res.StatusCode,
 13377  			Header: res.Header,
 13378  		})
 13379  	}
 13380  	if err != nil {
 13381  		return nil, err
 13382  	}
 13383  	defer googleapi.CloseBody(res)
 13384  	if err := googleapi.CheckResponse(res); err != nil {
 13385  		return nil, gensupport.WrapError(err)
 13386  	}
 13387  	ret := &Operation{
 13388  		ServerResponse: googleapi.ServerResponse{
 13389  			Header:         res.Header,
 13390  			HTTPStatusCode: res.StatusCode,
 13391  		},
 13392  	}
 13393  	target := &ret
 13394  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13395  		return nil, err
 13396  	}
 13397  	return ret, nil
 13398  }
 13399  
 13400  type ProjectsLocationsUrlListsDeleteCall struct {
 13401  	s          *Service
 13402  	name       string
 13403  	urlParams_ gensupport.URLParams
 13404  	ctx_       context.Context
 13405  	header_    http.Header
 13406  }
 13407  
 13408  // Delete: Deletes a single UrlList.
 13409  //
 13410  //   - name: A name of the UrlList to delete. Must be in the format
 13411  //     `projects/*/locations/{location}/urlLists/*`.
 13412  func (r *ProjectsLocationsUrlListsService) Delete(name string) *ProjectsLocationsUrlListsDeleteCall {
 13413  	c := &ProjectsLocationsUrlListsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13414  	c.name = name
 13415  	return c
 13416  }
 13417  
 13418  // Fields allows partial responses to be retrieved. See
 13419  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13420  // details.
 13421  func (c *ProjectsLocationsUrlListsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsUrlListsDeleteCall {
 13422  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13423  	return c
 13424  }
 13425  
 13426  // Context sets the context to be used in this call's Do method.
 13427  func (c *ProjectsLocationsUrlListsDeleteCall) Context(ctx context.Context) *ProjectsLocationsUrlListsDeleteCall {
 13428  	c.ctx_ = ctx
 13429  	return c
 13430  }
 13431  
 13432  // Header returns a http.Header that can be modified by the caller to add
 13433  // headers to the request.
 13434  func (c *ProjectsLocationsUrlListsDeleteCall) Header() http.Header {
 13435  	if c.header_ == nil {
 13436  		c.header_ = make(http.Header)
 13437  	}
 13438  	return c.header_
 13439  }
 13440  
 13441  func (c *ProjectsLocationsUrlListsDeleteCall) doRequest(alt string) (*http.Response, error) {
 13442  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 13443  	var body io.Reader = nil
 13444  	c.urlParams_.Set("alt", alt)
 13445  	c.urlParams_.Set("prettyPrint", "false")
 13446  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 13447  	urls += "?" + c.urlParams_.Encode()
 13448  	req, err := http.NewRequest("DELETE", urls, body)
 13449  	if err != nil {
 13450  		return nil, err
 13451  	}
 13452  	req.Header = reqHeaders
 13453  	googleapi.Expand(req.URL, map[string]string{
 13454  		"name": c.name,
 13455  	})
 13456  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13457  }
 13458  
 13459  // Do executes the "networksecurity.projects.locations.urlLists.delete" call.
 13460  // Any non-2xx status code is an error. Response headers are in either
 13461  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 13462  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 13463  // whether the returned error was because http.StatusNotModified was returned.
 13464  func (c *ProjectsLocationsUrlListsDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 13465  	gensupport.SetOptions(c.urlParams_, opts...)
 13466  	res, err := c.doRequest("json")
 13467  	if res != nil && res.StatusCode == http.StatusNotModified {
 13468  		if res.Body != nil {
 13469  			res.Body.Close()
 13470  		}
 13471  		return nil, gensupport.WrapError(&googleapi.Error{
 13472  			Code:   res.StatusCode,
 13473  			Header: res.Header,
 13474  		})
 13475  	}
 13476  	if err != nil {
 13477  		return nil, err
 13478  	}
 13479  	defer googleapi.CloseBody(res)
 13480  	if err := googleapi.CheckResponse(res); err != nil {
 13481  		return nil, gensupport.WrapError(err)
 13482  	}
 13483  	ret := &Operation{
 13484  		ServerResponse: googleapi.ServerResponse{
 13485  			Header:         res.Header,
 13486  			HTTPStatusCode: res.StatusCode,
 13487  		},
 13488  	}
 13489  	target := &ret
 13490  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13491  		return nil, err
 13492  	}
 13493  	return ret, nil
 13494  }
 13495  
 13496  type ProjectsLocationsUrlListsGetCall struct {
 13497  	s            *Service
 13498  	name         string
 13499  	urlParams_   gensupport.URLParams
 13500  	ifNoneMatch_ string
 13501  	ctx_         context.Context
 13502  	header_      http.Header
 13503  }
 13504  
 13505  // Get: Gets details of a single UrlList.
 13506  //
 13507  //   - name: A name of the UrlList to get. Must be in the format
 13508  //     `projects/*/locations/{location}/urlLists/*`.
 13509  func (r *ProjectsLocationsUrlListsService) Get(name string) *ProjectsLocationsUrlListsGetCall {
 13510  	c := &ProjectsLocationsUrlListsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13511  	c.name = name
 13512  	return c
 13513  }
 13514  
 13515  // Fields allows partial responses to be retrieved. See
 13516  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13517  // details.
 13518  func (c *ProjectsLocationsUrlListsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsUrlListsGetCall {
 13519  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13520  	return c
 13521  }
 13522  
 13523  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 13524  // object's ETag matches the given value. This is useful for getting updates
 13525  // only after the object has changed since the last request.
 13526  func (c *ProjectsLocationsUrlListsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsUrlListsGetCall {
 13527  	c.ifNoneMatch_ = entityTag
 13528  	return c
 13529  }
 13530  
 13531  // Context sets the context to be used in this call's Do method.
 13532  func (c *ProjectsLocationsUrlListsGetCall) Context(ctx context.Context) *ProjectsLocationsUrlListsGetCall {
 13533  	c.ctx_ = ctx
 13534  	return c
 13535  }
 13536  
 13537  // Header returns a http.Header that can be modified by the caller to add
 13538  // headers to the request.
 13539  func (c *ProjectsLocationsUrlListsGetCall) Header() http.Header {
 13540  	if c.header_ == nil {
 13541  		c.header_ = make(http.Header)
 13542  	}
 13543  	return c.header_
 13544  }
 13545  
 13546  func (c *ProjectsLocationsUrlListsGetCall) doRequest(alt string) (*http.Response, error) {
 13547  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 13548  	if c.ifNoneMatch_ != "" {
 13549  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 13550  	}
 13551  	var body io.Reader = nil
 13552  	c.urlParams_.Set("alt", alt)
 13553  	c.urlParams_.Set("prettyPrint", "false")
 13554  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 13555  	urls += "?" + c.urlParams_.Encode()
 13556  	req, err := http.NewRequest("GET", urls, body)
 13557  	if err != nil {
 13558  		return nil, err
 13559  	}
 13560  	req.Header = reqHeaders
 13561  	googleapi.Expand(req.URL, map[string]string{
 13562  		"name": c.name,
 13563  	})
 13564  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13565  }
 13566  
 13567  // Do executes the "networksecurity.projects.locations.urlLists.get" call.
 13568  // Any non-2xx status code is an error. Response headers are in either
 13569  // *UrlList.ServerResponse.Header or (if a response was returned at all) in
 13570  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 13571  // whether the returned error was because http.StatusNotModified was returned.
 13572  func (c *ProjectsLocationsUrlListsGetCall) Do(opts ...googleapi.CallOption) (*UrlList, error) {
 13573  	gensupport.SetOptions(c.urlParams_, opts...)
 13574  	res, err := c.doRequest("json")
 13575  	if res != nil && res.StatusCode == http.StatusNotModified {
 13576  		if res.Body != nil {
 13577  			res.Body.Close()
 13578  		}
 13579  		return nil, gensupport.WrapError(&googleapi.Error{
 13580  			Code:   res.StatusCode,
 13581  			Header: res.Header,
 13582  		})
 13583  	}
 13584  	if err != nil {
 13585  		return nil, err
 13586  	}
 13587  	defer googleapi.CloseBody(res)
 13588  	if err := googleapi.CheckResponse(res); err != nil {
 13589  		return nil, gensupport.WrapError(err)
 13590  	}
 13591  	ret := &UrlList{
 13592  		ServerResponse: googleapi.ServerResponse{
 13593  			Header:         res.Header,
 13594  			HTTPStatusCode: res.StatusCode,
 13595  		},
 13596  	}
 13597  	target := &ret
 13598  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13599  		return nil, err
 13600  	}
 13601  	return ret, nil
 13602  }
 13603  
 13604  type ProjectsLocationsUrlListsListCall struct {
 13605  	s            *Service
 13606  	parent       string
 13607  	urlParams_   gensupport.URLParams
 13608  	ifNoneMatch_ string
 13609  	ctx_         context.Context
 13610  	header_      http.Header
 13611  }
 13612  
 13613  // List: Lists UrlLists in a given project and location.
 13614  //
 13615  //   - parent: The project and location from which the UrlLists should be listed,
 13616  //     specified in the format `projects/{project}/locations/{location}`.
 13617  func (r *ProjectsLocationsUrlListsService) List(parent string) *ProjectsLocationsUrlListsListCall {
 13618  	c := &ProjectsLocationsUrlListsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13619  	c.parent = parent
 13620  	return c
 13621  }
 13622  
 13623  // PageSize sets the optional parameter "pageSize": Maximum number of UrlLists
 13624  // to return per call.
 13625  func (c *ProjectsLocationsUrlListsListCall) PageSize(pageSize int64) *ProjectsLocationsUrlListsListCall {
 13626  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 13627  	return c
 13628  }
 13629  
 13630  // PageToken sets the optional parameter "pageToken": The value returned by the
 13631  // last `ListUrlListsResponse` Indicates that this is a continuation of a prior
 13632  // `ListUrlLists` call, and that the system should return the next page of
 13633  // data.
 13634  func (c *ProjectsLocationsUrlListsListCall) PageToken(pageToken string) *ProjectsLocationsUrlListsListCall {
 13635  	c.urlParams_.Set("pageToken", pageToken)
 13636  	return c
 13637  }
 13638  
 13639  // Fields allows partial responses to be retrieved. See
 13640  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13641  // details.
 13642  func (c *ProjectsLocationsUrlListsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsUrlListsListCall {
 13643  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13644  	return c
 13645  }
 13646  
 13647  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 13648  // object's ETag matches the given value. This is useful for getting updates
 13649  // only after the object has changed since the last request.
 13650  func (c *ProjectsLocationsUrlListsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsUrlListsListCall {
 13651  	c.ifNoneMatch_ = entityTag
 13652  	return c
 13653  }
 13654  
 13655  // Context sets the context to be used in this call's Do method.
 13656  func (c *ProjectsLocationsUrlListsListCall) Context(ctx context.Context) *ProjectsLocationsUrlListsListCall {
 13657  	c.ctx_ = ctx
 13658  	return c
 13659  }
 13660  
 13661  // Header returns a http.Header that can be modified by the caller to add
 13662  // headers to the request.
 13663  func (c *ProjectsLocationsUrlListsListCall) Header() http.Header {
 13664  	if c.header_ == nil {
 13665  		c.header_ = make(http.Header)
 13666  	}
 13667  	return c.header_
 13668  }
 13669  
 13670  func (c *ProjectsLocationsUrlListsListCall) doRequest(alt string) (*http.Response, error) {
 13671  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 13672  	if c.ifNoneMatch_ != "" {
 13673  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 13674  	}
 13675  	var body io.Reader = nil
 13676  	c.urlParams_.Set("alt", alt)
 13677  	c.urlParams_.Set("prettyPrint", "false")
 13678  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/urlLists")
 13679  	urls += "?" + c.urlParams_.Encode()
 13680  	req, err := http.NewRequest("GET", urls, body)
 13681  	if err != nil {
 13682  		return nil, err
 13683  	}
 13684  	req.Header = reqHeaders
 13685  	googleapi.Expand(req.URL, map[string]string{
 13686  		"parent": c.parent,
 13687  	})
 13688  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13689  }
 13690  
 13691  // Do executes the "networksecurity.projects.locations.urlLists.list" call.
 13692  // Any non-2xx status code is an error. Response headers are in either
 13693  // *ListUrlListsResponse.ServerResponse.Header or (if a response was returned
 13694  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 13695  // check whether the returned error was because http.StatusNotModified was
 13696  // returned.
 13697  func (c *ProjectsLocationsUrlListsListCall) Do(opts ...googleapi.CallOption) (*ListUrlListsResponse, error) {
 13698  	gensupport.SetOptions(c.urlParams_, opts...)
 13699  	res, err := c.doRequest("json")
 13700  	if res != nil && res.StatusCode == http.StatusNotModified {
 13701  		if res.Body != nil {
 13702  			res.Body.Close()
 13703  		}
 13704  		return nil, gensupport.WrapError(&googleapi.Error{
 13705  			Code:   res.StatusCode,
 13706  			Header: res.Header,
 13707  		})
 13708  	}
 13709  	if err != nil {
 13710  		return nil, err
 13711  	}
 13712  	defer googleapi.CloseBody(res)
 13713  	if err := googleapi.CheckResponse(res); err != nil {
 13714  		return nil, gensupport.WrapError(err)
 13715  	}
 13716  	ret := &ListUrlListsResponse{
 13717  		ServerResponse: googleapi.ServerResponse{
 13718  			Header:         res.Header,
 13719  			HTTPStatusCode: res.StatusCode,
 13720  		},
 13721  	}
 13722  	target := &ret
 13723  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13724  		return nil, err
 13725  	}
 13726  	return ret, nil
 13727  }
 13728  
 13729  // Pages invokes f for each page of results.
 13730  // A non-nil error returned from f will halt the iteration.
 13731  // The provided context supersedes any context provided to the Context method.
 13732  func (c *ProjectsLocationsUrlListsListCall) Pages(ctx context.Context, f func(*ListUrlListsResponse) error) error {
 13733  	c.ctx_ = ctx
 13734  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 13735  	for {
 13736  		x, err := c.Do()
 13737  		if err != nil {
 13738  			return err
 13739  		}
 13740  		if err := f(x); err != nil {
 13741  			return err
 13742  		}
 13743  		if x.NextPageToken == "" {
 13744  			return nil
 13745  		}
 13746  		c.PageToken(x.NextPageToken)
 13747  	}
 13748  }
 13749  
 13750  type ProjectsLocationsUrlListsPatchCall struct {
 13751  	s          *Service
 13752  	name       string
 13753  	urllist    *UrlList
 13754  	urlParams_ gensupport.URLParams
 13755  	ctx_       context.Context
 13756  	header_    http.Header
 13757  }
 13758  
 13759  // Patch: Updates the parameters of a single UrlList.
 13760  //
 13761  //   - name: Name of the resource provided by the user. Name is of the form
 13762  //     projects/{project}/locations/{location}/urlLists/{url_list} url_list
 13763  //     should match the pattern:(^a-z ([a-z0-9-]{0,61}[a-z0-9])?$).
 13764  func (r *ProjectsLocationsUrlListsService) Patch(name string, urllist *UrlList) *ProjectsLocationsUrlListsPatchCall {
 13765  	c := &ProjectsLocationsUrlListsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13766  	c.name = name
 13767  	c.urllist = urllist
 13768  	return c
 13769  }
 13770  
 13771  // UpdateMask sets the optional parameter "updateMask": Field mask is used to
 13772  // specify the fields to be overwritten in the UrlList resource by the update.
 13773  // The fields specified in the update_mask are relative to the resource, not
 13774  // the full request. A field will be overwritten if it is in the mask. If the
 13775  // user does not provide a mask then all fields will be overwritten.
 13776  func (c *ProjectsLocationsUrlListsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsUrlListsPatchCall {
 13777  	c.urlParams_.Set("updateMask", updateMask)
 13778  	return c
 13779  }
 13780  
 13781  // Fields allows partial responses to be retrieved. See
 13782  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13783  // details.
 13784  func (c *ProjectsLocationsUrlListsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsUrlListsPatchCall {
 13785  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13786  	return c
 13787  }
 13788  
 13789  // Context sets the context to be used in this call's Do method.
 13790  func (c *ProjectsLocationsUrlListsPatchCall) Context(ctx context.Context) *ProjectsLocationsUrlListsPatchCall {
 13791  	c.ctx_ = ctx
 13792  	return c
 13793  }
 13794  
 13795  // Header returns a http.Header that can be modified by the caller to add
 13796  // headers to the request.
 13797  func (c *ProjectsLocationsUrlListsPatchCall) Header() http.Header {
 13798  	if c.header_ == nil {
 13799  		c.header_ = make(http.Header)
 13800  	}
 13801  	return c.header_
 13802  }
 13803  
 13804  func (c *ProjectsLocationsUrlListsPatchCall) doRequest(alt string) (*http.Response, error) {
 13805  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 13806  	var body io.Reader = nil
 13807  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.urllist)
 13808  	if err != nil {
 13809  		return nil, err
 13810  	}
 13811  	c.urlParams_.Set("alt", alt)
 13812  	c.urlParams_.Set("prettyPrint", "false")
 13813  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 13814  	urls += "?" + c.urlParams_.Encode()
 13815  	req, err := http.NewRequest("PATCH", urls, body)
 13816  	if err != nil {
 13817  		return nil, err
 13818  	}
 13819  	req.Header = reqHeaders
 13820  	googleapi.Expand(req.URL, map[string]string{
 13821  		"name": c.name,
 13822  	})
 13823  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13824  }
 13825  
 13826  // Do executes the "networksecurity.projects.locations.urlLists.patch" call.
 13827  // Any non-2xx status code is an error. Response headers are in either
 13828  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 13829  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 13830  // whether the returned error was because http.StatusNotModified was returned.
 13831  func (c *ProjectsLocationsUrlListsPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 13832  	gensupport.SetOptions(c.urlParams_, opts...)
 13833  	res, err := c.doRequest("json")
 13834  	if res != nil && res.StatusCode == http.StatusNotModified {
 13835  		if res.Body != nil {
 13836  			res.Body.Close()
 13837  		}
 13838  		return nil, gensupport.WrapError(&googleapi.Error{
 13839  			Code:   res.StatusCode,
 13840  			Header: res.Header,
 13841  		})
 13842  	}
 13843  	if err != nil {
 13844  		return nil, err
 13845  	}
 13846  	defer googleapi.CloseBody(res)
 13847  	if err := googleapi.CheckResponse(res); err != nil {
 13848  		return nil, gensupport.WrapError(err)
 13849  	}
 13850  	ret := &Operation{
 13851  		ServerResponse: googleapi.ServerResponse{
 13852  			Header:         res.Header,
 13853  			HTTPStatusCode: res.StatusCode,
 13854  		},
 13855  	}
 13856  	target := &ret
 13857  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13858  		return nil, err
 13859  	}
 13860  	return ret, nil
 13861  }
 13862  

View as plain text