...

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

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

     1  // Copyright 2024 Google LLC.
     2  // Use of this source code is governed by a BSD-style
     3  // license that can be found in the LICENSE file.
     4  
     5  // Code generated file. DO NOT EDIT.
     6  
     7  // Package datacatalog provides access to the Google Cloud Data Catalog API.
     8  //
     9  // For product documentation, see: https://cloud.google.com/data-catalog/docs/
    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/datacatalog/v1beta1"
    27  //	...
    28  //	ctx := context.Background()
    29  //	datacatalogService, err := datacatalog.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  //	datacatalogService, err := datacatalog.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  //	datacatalogService, err := datacatalog.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))
    49  //
    50  // See [google.golang.org/api/option.ClientOption] for details on options.
    51  package datacatalog // import "google.golang.org/api/datacatalog/v1beta1"
    52  
    53  import (
    54  	"bytes"
    55  	"context"
    56  	"encoding/json"
    57  	"errors"
    58  	"fmt"
    59  	"io"
    60  	"net/http"
    61  	"net/url"
    62  	"strconv"
    63  	"strings"
    64  
    65  	googleapi "google.golang.org/api/googleapi"
    66  	internal "google.golang.org/api/internal"
    67  	gensupport "google.golang.org/api/internal/gensupport"
    68  	option "google.golang.org/api/option"
    69  	internaloption "google.golang.org/api/option/internaloption"
    70  	htransport "google.golang.org/api/transport/http"
    71  )
    72  
    73  // Always reference these packages, just in case the auto-generated code
    74  // below doesn't.
    75  var _ = bytes.NewBuffer
    76  var _ = strconv.Itoa
    77  var _ = fmt.Sprintf
    78  var _ = json.NewDecoder
    79  var _ = io.Copy
    80  var _ = url.Parse
    81  var _ = gensupport.MarshalJSON
    82  var _ = googleapi.Version
    83  var _ = errors.New
    84  var _ = strings.Replace
    85  var _ = context.Canceled
    86  var _ = internaloption.WithDefaultEndpoint
    87  var _ = internal.Version
    88  
    89  const apiId = "datacatalog:v1beta1"
    90  const apiName = "datacatalog"
    91  const apiVersion = "v1beta1"
    92  const basePath = "https://datacatalog.googleapis.com/"
    93  const basePathTemplate = "https://datacatalog.UNIVERSE_DOMAIN/"
    94  const mtlsBasePath = "https://datacatalog.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.Catalog = NewCatalogService(s)
   139  	s.Entries = NewEntriesService(s)
   140  	s.Projects = NewProjectsService(s)
   141  	return s, nil
   142  }
   143  
   144  type Service struct {
   145  	client    *http.Client
   146  	BasePath  string // API endpoint base URL
   147  	UserAgent string // optional additional User-Agent fragment
   148  
   149  	Catalog *CatalogService
   150  
   151  	Entries *EntriesService
   152  
   153  	Projects *ProjectsService
   154  }
   155  
   156  func (s *Service) userAgent() string {
   157  	if s.UserAgent == "" {
   158  		return googleapi.UserAgent
   159  	}
   160  	return googleapi.UserAgent + " " + s.UserAgent
   161  }
   162  
   163  func NewCatalogService(s *Service) *CatalogService {
   164  	rs := &CatalogService{s: s}
   165  	return rs
   166  }
   167  
   168  type CatalogService struct {
   169  	s *Service
   170  }
   171  
   172  func NewEntriesService(s *Service) *EntriesService {
   173  	rs := &EntriesService{s: s}
   174  	return rs
   175  }
   176  
   177  type EntriesService struct {
   178  	s *Service
   179  }
   180  
   181  func NewProjectsService(s *Service) *ProjectsService {
   182  	rs := &ProjectsService{s: s}
   183  	rs.Locations = NewProjectsLocationsService(s)
   184  	return rs
   185  }
   186  
   187  type ProjectsService struct {
   188  	s *Service
   189  
   190  	Locations *ProjectsLocationsService
   191  }
   192  
   193  func NewProjectsLocationsService(s *Service) *ProjectsLocationsService {
   194  	rs := &ProjectsLocationsService{s: s}
   195  	rs.EntryGroups = NewProjectsLocationsEntryGroupsService(s)
   196  	rs.TagTemplates = NewProjectsLocationsTagTemplatesService(s)
   197  	rs.Taxonomies = NewProjectsLocationsTaxonomiesService(s)
   198  	return rs
   199  }
   200  
   201  type ProjectsLocationsService struct {
   202  	s *Service
   203  
   204  	EntryGroups *ProjectsLocationsEntryGroupsService
   205  
   206  	TagTemplates *ProjectsLocationsTagTemplatesService
   207  
   208  	Taxonomies *ProjectsLocationsTaxonomiesService
   209  }
   210  
   211  func NewProjectsLocationsEntryGroupsService(s *Service) *ProjectsLocationsEntryGroupsService {
   212  	rs := &ProjectsLocationsEntryGroupsService{s: s}
   213  	rs.Entries = NewProjectsLocationsEntryGroupsEntriesService(s)
   214  	rs.Tags = NewProjectsLocationsEntryGroupsTagsService(s)
   215  	return rs
   216  }
   217  
   218  type ProjectsLocationsEntryGroupsService struct {
   219  	s *Service
   220  
   221  	Entries *ProjectsLocationsEntryGroupsEntriesService
   222  
   223  	Tags *ProjectsLocationsEntryGroupsTagsService
   224  }
   225  
   226  func NewProjectsLocationsEntryGroupsEntriesService(s *Service) *ProjectsLocationsEntryGroupsEntriesService {
   227  	rs := &ProjectsLocationsEntryGroupsEntriesService{s: s}
   228  	rs.Tags = NewProjectsLocationsEntryGroupsEntriesTagsService(s)
   229  	return rs
   230  }
   231  
   232  type ProjectsLocationsEntryGroupsEntriesService struct {
   233  	s *Service
   234  
   235  	Tags *ProjectsLocationsEntryGroupsEntriesTagsService
   236  }
   237  
   238  func NewProjectsLocationsEntryGroupsEntriesTagsService(s *Service) *ProjectsLocationsEntryGroupsEntriesTagsService {
   239  	rs := &ProjectsLocationsEntryGroupsEntriesTagsService{s: s}
   240  	return rs
   241  }
   242  
   243  type ProjectsLocationsEntryGroupsEntriesTagsService struct {
   244  	s *Service
   245  }
   246  
   247  func NewProjectsLocationsEntryGroupsTagsService(s *Service) *ProjectsLocationsEntryGroupsTagsService {
   248  	rs := &ProjectsLocationsEntryGroupsTagsService{s: s}
   249  	return rs
   250  }
   251  
   252  type ProjectsLocationsEntryGroupsTagsService struct {
   253  	s *Service
   254  }
   255  
   256  func NewProjectsLocationsTagTemplatesService(s *Service) *ProjectsLocationsTagTemplatesService {
   257  	rs := &ProjectsLocationsTagTemplatesService{s: s}
   258  	rs.Fields = NewProjectsLocationsTagTemplatesFieldsService(s)
   259  	return rs
   260  }
   261  
   262  type ProjectsLocationsTagTemplatesService struct {
   263  	s *Service
   264  
   265  	Fields *ProjectsLocationsTagTemplatesFieldsService
   266  }
   267  
   268  func NewProjectsLocationsTagTemplatesFieldsService(s *Service) *ProjectsLocationsTagTemplatesFieldsService {
   269  	rs := &ProjectsLocationsTagTemplatesFieldsService{s: s}
   270  	rs.EnumValues = NewProjectsLocationsTagTemplatesFieldsEnumValuesService(s)
   271  	return rs
   272  }
   273  
   274  type ProjectsLocationsTagTemplatesFieldsService struct {
   275  	s *Service
   276  
   277  	EnumValues *ProjectsLocationsTagTemplatesFieldsEnumValuesService
   278  }
   279  
   280  func NewProjectsLocationsTagTemplatesFieldsEnumValuesService(s *Service) *ProjectsLocationsTagTemplatesFieldsEnumValuesService {
   281  	rs := &ProjectsLocationsTagTemplatesFieldsEnumValuesService{s: s}
   282  	return rs
   283  }
   284  
   285  type ProjectsLocationsTagTemplatesFieldsEnumValuesService struct {
   286  	s *Service
   287  }
   288  
   289  func NewProjectsLocationsTaxonomiesService(s *Service) *ProjectsLocationsTaxonomiesService {
   290  	rs := &ProjectsLocationsTaxonomiesService{s: s}
   291  	rs.PolicyTags = NewProjectsLocationsTaxonomiesPolicyTagsService(s)
   292  	return rs
   293  }
   294  
   295  type ProjectsLocationsTaxonomiesService struct {
   296  	s *Service
   297  
   298  	PolicyTags *ProjectsLocationsTaxonomiesPolicyTagsService
   299  }
   300  
   301  func NewProjectsLocationsTaxonomiesPolicyTagsService(s *Service) *ProjectsLocationsTaxonomiesPolicyTagsService {
   302  	rs := &ProjectsLocationsTaxonomiesPolicyTagsService{s: s}
   303  	return rs
   304  }
   305  
   306  type ProjectsLocationsTaxonomiesPolicyTagsService struct {
   307  	s *Service
   308  }
   309  
   310  // Binding: Associates `members`, or principals, with a `role`.
   311  type Binding struct {
   312  	// Condition: The condition that is associated with this binding. If the
   313  	// condition evaluates to `true`, then this binding applies to the current
   314  	// request. If the condition evaluates to `false`, then this binding does not
   315  	// apply to the current request. However, a different role binding might grant
   316  	// the same role to one or more of the principals in this binding. To learn
   317  	// which resources support conditions in their IAM policies, see the IAM
   318  	// documentation
   319  	// (https://cloud.google.com/iam/help/conditions/resource-policies).
   320  	Condition *Expr `json:"condition,omitempty"`
   321  	// Members: Specifies the principals requesting access for a Google Cloud
   322  	// resource. `members` can have the following values: * `allUsers`: A special
   323  	// identifier that represents anyone who is on the internet; with or without a
   324  	// Google account. * `allAuthenticatedUsers`: A special identifier that
   325  	// represents anyone who is authenticated with a Google account or a service
   326  	// account. Does not include identities that come from external identity
   327  	// providers (IdPs) through identity federation. * `user:{emailid}`: An email
   328  	// address that represents a specific Google account. For example,
   329  	// `alice@example.com` . * `serviceAccount:{emailid}`: An email address that
   330  	// represents a Google service account. For example,
   331  	// `my-other-app@appspot.gserviceaccount.com`. *
   332  	// `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An
   333  	// identifier for a Kubernetes service account
   334  	// (https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts).
   335  	// For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. *
   336  	// `group:{emailid}`: An email address that represents a Google group. For
   337  	// example, `admins@example.com`. * `domain:{domain}`: The G Suite domain
   338  	// (primary) that represents all the users of that domain. For example,
   339  	// `google.com` or `example.com`. *
   340  	// `principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/sub
   341  	// ject/{subject_attribute_value}`: A single identity in a workforce identity
   342  	// pool. *
   343  	// `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/
   344  	// group/{group_id}`: All workforce identities in a group. *
   345  	// `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/
   346  	// attribute.{attribute_name}/{attribute_value}`: All workforce identities with
   347  	// a specific attribute value. *
   348  	// `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/
   349  	// *`: All identities in a workforce identity pool. *
   350  	// `principal://iam.googleapis.com/projects/{project_number}/locations/global/wo
   351  	// rkloadIdentityPools/{pool_id}/subject/{subject_attribute_value}`: A single
   352  	// identity in a workload identity pool. *
   353  	// `principalSet://iam.googleapis.com/projects/{project_number}/locations/global
   354  	// /workloadIdentityPools/{pool_id}/group/{group_id}`: A workload identity pool
   355  	// group. *
   356  	// `principalSet://iam.googleapis.com/projects/{project_number}/locations/global
   357  	// /workloadIdentityPools/{pool_id}/attribute.{attribute_name}/{attribute_value}
   358  	// `: All identities in a workload identity pool with a certain attribute. *
   359  	// `principalSet://iam.googleapis.com/projects/{project_number}/locations/global
   360  	// /workloadIdentityPools/{pool_id}/*`: All identities in a workload identity
   361  	// pool. * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus
   362  	// unique identifier) representing a user that has been recently deleted. For
   363  	// example, `alice@example.com?uid=123456789012345678901`. If the user is
   364  	// recovered, this value reverts to `user:{emailid}` and the recovered user
   365  	// retains the role in the binding. *
   366  	// `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus
   367  	// unique identifier) representing a service account that has been recently
   368  	// deleted. For example,
   369  	// `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the
   370  	// service account is undeleted, this value reverts to
   371  	// `serviceAccount:{emailid}` and the undeleted service account retains the
   372  	// role in the binding. * `deleted:group:{emailid}?uid={uniqueid}`: An email
   373  	// address (plus unique identifier) representing a Google group that has been
   374  	// recently deleted. For example,
   375  	// `admins@example.com?uid=123456789012345678901`. If the group is recovered,
   376  	// this value reverts to `group:{emailid}` and the recovered group retains the
   377  	// role in the binding. *
   378  	// `deleted:principal://iam.googleapis.com/locations/global/workforcePools/{pool
   379  	// _id}/subject/{subject_attribute_value}`: Deleted single identity in a
   380  	// workforce identity pool. For example,
   381  	// `deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-po
   382  	// ol-id/subject/my-subject-attribute-value`.
   383  	Members []string `json:"members,omitempty"`
   384  	// Role: Role that is assigned to the list of `members`, or principals. For
   385  	// example, `roles/viewer`, `roles/editor`, or `roles/owner`. For an overview
   386  	// of the IAM roles and permissions, see the IAM documentation
   387  	// (https://cloud.google.com/iam/docs/roles-overview). For a list of the
   388  	// available pre-defined roles, see here
   389  	// (https://cloud.google.com/iam/docs/understanding-roles).
   390  	Role string `json:"role,omitempty"`
   391  	// ForceSendFields is a list of field names (e.g. "Condition") to
   392  	// unconditionally include in API requests. By default, fields with empty or
   393  	// default values are omitted from API requests. See
   394  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   395  	// details.
   396  	ForceSendFields []string `json:"-"`
   397  	// NullFields is a list of field names (e.g. "Condition") to include in API
   398  	// requests with the JSON null value. By default, fields with empty values are
   399  	// omitted from API requests. See
   400  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   401  	NullFields []string `json:"-"`
   402  }
   403  
   404  func (s *Binding) MarshalJSON() ([]byte, error) {
   405  	type NoMethod Binding
   406  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   407  }
   408  
   409  // Empty: A generic empty message that you can re-use to avoid defining
   410  // duplicated empty messages in your APIs. A typical example is to use it as
   411  // the request or the response type of an API method. For instance: service Foo
   412  // { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); }
   413  type Empty struct {
   414  	// ServerResponse contains the HTTP response code and headers from the server.
   415  	googleapi.ServerResponse `json:"-"`
   416  }
   417  
   418  // Expr: Represents a textual expression in the Common Expression Language
   419  // (CEL) syntax. CEL is a C-like expression language. The syntax and semantics
   420  // of CEL are documented at https://github.com/google/cel-spec. Example
   421  // (Comparison): title: "Summary size limit" description: "Determines if a
   422  // summary is less than 100 chars" expression: "document.summary.size() < 100"
   423  // Example (Equality): title: "Requestor is owner" description: "Determines if
   424  // requestor is the document owner" expression: "document.owner ==
   425  // request.auth.claims.email" Example (Logic): title: "Public documents"
   426  // description: "Determine whether the document should be publicly visible"
   427  // expression: "document.type != 'private' && document.type != 'internal'"
   428  // Example (Data Manipulation): title: "Notification string" description:
   429  // "Create a notification string with a timestamp." expression: "'New message
   430  // received at ' + string(document.create_time)" The exact variables and
   431  // functions that may be referenced within an expression are determined by the
   432  // service that evaluates it. See the service documentation for additional
   433  // information.
   434  type Expr struct {
   435  	// Description: Optional. Description of the expression. This is a longer text
   436  	// which describes the expression, e.g. when hovered over it in a UI.
   437  	Description string `json:"description,omitempty"`
   438  	// Expression: Textual representation of an expression in Common Expression
   439  	// Language syntax.
   440  	Expression string `json:"expression,omitempty"`
   441  	// Location: Optional. String indicating the location of the expression for
   442  	// error reporting, e.g. a file name and a position in the file.
   443  	Location string `json:"location,omitempty"`
   444  	// Title: Optional. Title for the expression, i.e. a short string describing
   445  	// its purpose. This can be used e.g. in UIs which allow to enter the
   446  	// expression.
   447  	Title string `json:"title,omitempty"`
   448  	// ForceSendFields is a list of field names (e.g. "Description") to
   449  	// unconditionally include in API requests. By default, fields with empty or
   450  	// default values are omitted from API requests. See
   451  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   452  	// details.
   453  	ForceSendFields []string `json:"-"`
   454  	// NullFields is a list of field names (e.g. "Description") to include in API
   455  	// requests with the JSON null value. By default, fields with empty values are
   456  	// omitted from API requests. See
   457  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   458  	NullFields []string `json:"-"`
   459  }
   460  
   461  func (s *Expr) MarshalJSON() ([]byte, error) {
   462  	type NoMethod Expr
   463  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   464  }
   465  
   466  // GetIamPolicyRequest: Request message for `GetIamPolicy` method.
   467  type GetIamPolicyRequest struct {
   468  	// Options: OPTIONAL: A `GetPolicyOptions` object for specifying options to
   469  	// `GetIamPolicy`.
   470  	Options *GetPolicyOptions `json:"options,omitempty"`
   471  	// ForceSendFields is a list of field names (e.g. "Options") to unconditionally
   472  	// include in API requests. By default, fields with empty or default values are
   473  	// omitted from API requests. See
   474  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   475  	// details.
   476  	ForceSendFields []string `json:"-"`
   477  	// NullFields is a list of field names (e.g. "Options") to include in API
   478  	// requests with the JSON null value. By default, fields with empty values are
   479  	// omitted from API requests. See
   480  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   481  	NullFields []string `json:"-"`
   482  }
   483  
   484  func (s *GetIamPolicyRequest) MarshalJSON() ([]byte, error) {
   485  	type NoMethod GetIamPolicyRequest
   486  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   487  }
   488  
   489  // GetPolicyOptions: Encapsulates settings provided to GetIamPolicy.
   490  type GetPolicyOptions struct {
   491  	// RequestedPolicyVersion: Optional. The maximum policy version that will be
   492  	// used to format the policy. Valid values are 0, 1, and 3. Requests specifying
   493  	// an invalid value will be rejected. Requests for policies with any
   494  	// conditional role bindings must specify version 3. Policies with no
   495  	// conditional role bindings may specify any valid value or leave the field
   496  	// unset. The policy in the response might use the policy version that you
   497  	// specified, or it might use a lower policy version. For example, if you
   498  	// specify version 3, but the policy has no conditional role bindings, the
   499  	// response uses version 1. To learn which resources support conditions in
   500  	// their IAM policies, see the IAM documentation
   501  	// (https://cloud.google.com/iam/help/conditions/resource-policies).
   502  	RequestedPolicyVersion int64 `json:"requestedPolicyVersion,omitempty"`
   503  	// ForceSendFields is a list of field names (e.g. "RequestedPolicyVersion") to
   504  	// unconditionally include in API requests. By default, fields with empty or
   505  	// default values are omitted from API requests. See
   506  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   507  	// details.
   508  	ForceSendFields []string `json:"-"`
   509  	// NullFields is a list of field names (e.g. "RequestedPolicyVersion") to
   510  	// include in API requests with the JSON null value. By default, fields with
   511  	// empty values are omitted from API requests. See
   512  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   513  	NullFields []string `json:"-"`
   514  }
   515  
   516  func (s *GetPolicyOptions) MarshalJSON() ([]byte, error) {
   517  	type NoMethod GetPolicyOptions
   518  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   519  }
   520  
   521  // GoogleCloudDatacatalogV1BigQueryConnectionSpec: Specification for the
   522  // BigQuery connection.
   523  type GoogleCloudDatacatalogV1BigQueryConnectionSpec struct {
   524  	// CloudSql: Specification for the BigQuery connection to a Cloud SQL instance.
   525  	CloudSql *GoogleCloudDatacatalogV1CloudSqlBigQueryConnectionSpec `json:"cloudSql,omitempty"`
   526  	// ConnectionType: The type of the BigQuery connection.
   527  	//
   528  	// Possible values:
   529  	//   "CONNECTION_TYPE_UNSPECIFIED" - Unspecified type.
   530  	//   "CLOUD_SQL" - Cloud SQL connection.
   531  	ConnectionType string `json:"connectionType,omitempty"`
   532  	// HasCredential: True if there are credentials attached to the BigQuery
   533  	// connection; false otherwise.
   534  	HasCredential bool `json:"hasCredential,omitempty"`
   535  	// ForceSendFields is a list of field names (e.g. "CloudSql") 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. "CloudSql") to include in API
   542  	// requests with the JSON null value. By default, fields with empty values are
   543  	// 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 *GoogleCloudDatacatalogV1BigQueryConnectionSpec) MarshalJSON() ([]byte, error) {
   549  	type NoMethod GoogleCloudDatacatalogV1BigQueryConnectionSpec
   550  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   551  }
   552  
   553  // GoogleCloudDatacatalogV1BigQueryDateShardedSpec: Specification for a group
   554  // of BigQuery tables with the `[prefix]YYYYMMDD` name pattern. For more
   555  // information, see [Introduction to partitioned tables]
   556  // (https://cloud.google.com/bigquery/docs/partitioned-tables#partitioning_versus_sharding).
   557  type GoogleCloudDatacatalogV1BigQueryDateShardedSpec struct {
   558  	// Dataset: Output only. The Data Catalog resource name of the dataset entry
   559  	// the current table belongs to. For example:
   560  	// `projects/{PROJECT_ID}/locations/{LOCATION}/entrygroups/{ENTRY_GROUP_ID}/entr
   561  	// ies/{ENTRY_ID}`.
   562  	Dataset string `json:"dataset,omitempty"`
   563  	// LatestShardResource: Output only. BigQuery resource name of the latest
   564  	// shard.
   565  	LatestShardResource string `json:"latestShardResource,omitempty"`
   566  	// ShardCount: Output only. Total number of shards.
   567  	ShardCount int64 `json:"shardCount,omitempty,string"`
   568  	// TablePrefix: Output only. The table name prefix of the shards. The name of
   569  	// any given shard is `[table_prefix]YYYYMMDD`. For example, for the
   570  	// `MyTable20180101` shard, the `table_prefix` is `MyTable`.
   571  	TablePrefix string `json:"tablePrefix,omitempty"`
   572  	// ForceSendFields is a list of field names (e.g. "Dataset") to unconditionally
   573  	// include in API requests. By default, fields with empty or default values are
   574  	// omitted from API requests. See
   575  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   576  	// details.
   577  	ForceSendFields []string `json:"-"`
   578  	// NullFields is a list of field names (e.g. "Dataset") to include in API
   579  	// requests with the JSON null value. By default, fields with empty values are
   580  	// omitted from API requests. See
   581  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   582  	NullFields []string `json:"-"`
   583  }
   584  
   585  func (s *GoogleCloudDatacatalogV1BigQueryDateShardedSpec) MarshalJSON() ([]byte, error) {
   586  	type NoMethod GoogleCloudDatacatalogV1BigQueryDateShardedSpec
   587  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   588  }
   589  
   590  // GoogleCloudDatacatalogV1BigQueryRoutineSpec: Fields specific for BigQuery
   591  // routines.
   592  type GoogleCloudDatacatalogV1BigQueryRoutineSpec struct {
   593  	// ImportedLibraries: Paths of the imported libraries.
   594  	ImportedLibraries []string `json:"importedLibraries,omitempty"`
   595  	// ForceSendFields is a list of field names (e.g. "ImportedLibraries") to
   596  	// unconditionally include in API requests. By default, fields with empty or
   597  	// default values are omitted from API requests. See
   598  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   599  	// details.
   600  	ForceSendFields []string `json:"-"`
   601  	// NullFields is a list of field names (e.g. "ImportedLibraries") to include in
   602  	// API requests with the JSON null value. By default, fields with empty values
   603  	// are omitted from API requests. See
   604  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   605  	NullFields []string `json:"-"`
   606  }
   607  
   608  func (s *GoogleCloudDatacatalogV1BigQueryRoutineSpec) MarshalJSON() ([]byte, error) {
   609  	type NoMethod GoogleCloudDatacatalogV1BigQueryRoutineSpec
   610  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   611  }
   612  
   613  // GoogleCloudDatacatalogV1BigQueryTableSpec: Describes a BigQuery table.
   614  type GoogleCloudDatacatalogV1BigQueryTableSpec struct {
   615  	// TableSourceType: Output only. The table source type.
   616  	//
   617  	// Possible values:
   618  	//   "TABLE_SOURCE_TYPE_UNSPECIFIED" - Default unknown type.
   619  	//   "BIGQUERY_VIEW" - Table view.
   620  	//   "BIGQUERY_TABLE" - BigQuery native table.
   621  	//   "BIGQUERY_MATERIALIZED_VIEW" - BigQuery materialized view.
   622  	TableSourceType string `json:"tableSourceType,omitempty"`
   623  	// TableSpec: Specification of a BigQuery table. Populated only if the
   624  	// `table_source_type` is `BIGQUERY_TABLE`.
   625  	TableSpec *GoogleCloudDatacatalogV1TableSpec `json:"tableSpec,omitempty"`
   626  	// ViewSpec: Table view specification. Populated only if the
   627  	// `table_source_type` is `BIGQUERY_VIEW`.
   628  	ViewSpec *GoogleCloudDatacatalogV1ViewSpec `json:"viewSpec,omitempty"`
   629  	// ForceSendFields is a list of field names (e.g. "TableSourceType") to
   630  	// unconditionally include in API requests. By default, fields with empty or
   631  	// default values are omitted from API requests. See
   632  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   633  	// details.
   634  	ForceSendFields []string `json:"-"`
   635  	// NullFields is a list of field names (e.g. "TableSourceType") to include in
   636  	// API requests with the JSON null value. By default, fields with empty values
   637  	// are omitted from API requests. See
   638  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   639  	NullFields []string `json:"-"`
   640  }
   641  
   642  func (s *GoogleCloudDatacatalogV1BigQueryTableSpec) MarshalJSON() ([]byte, error) {
   643  	type NoMethod GoogleCloudDatacatalogV1BigQueryTableSpec
   644  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   645  }
   646  
   647  // GoogleCloudDatacatalogV1BusinessContext: Business Context of the entry.
   648  type GoogleCloudDatacatalogV1BusinessContext struct {
   649  	// Contacts: Contact people for the entry.
   650  	Contacts *GoogleCloudDatacatalogV1Contacts `json:"contacts,omitempty"`
   651  	// EntryOverview: Entry overview fields for rich text descriptions of entries.
   652  	EntryOverview *GoogleCloudDatacatalogV1EntryOverview `json:"entryOverview,omitempty"`
   653  	// ForceSendFields is a list of field names (e.g. "Contacts") to
   654  	// unconditionally include in API requests. By default, fields with empty or
   655  	// default values are omitted from API requests. See
   656  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   657  	// details.
   658  	ForceSendFields []string `json:"-"`
   659  	// NullFields is a list of field names (e.g. "Contacts") to include in API
   660  	// requests with the JSON null value. By default, fields with empty values are
   661  	// omitted from API requests. See
   662  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   663  	NullFields []string `json:"-"`
   664  }
   665  
   666  func (s *GoogleCloudDatacatalogV1BusinessContext) MarshalJSON() ([]byte, error) {
   667  	type NoMethod GoogleCloudDatacatalogV1BusinessContext
   668  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   669  }
   670  
   671  // GoogleCloudDatacatalogV1CloudBigtableInstanceSpec: Specification that
   672  // applies to Instance entries that are part of `CLOUD_BIGTABLE` system.
   673  // (user_specified_type)
   674  type GoogleCloudDatacatalogV1CloudBigtableInstanceSpec struct {
   675  	// CloudBigtableClusterSpecs: The list of clusters for the Instance.
   676  	CloudBigtableClusterSpecs []*GoogleCloudDatacatalogV1CloudBigtableInstanceSpecCloudBigtableClusterSpec `json:"cloudBigtableClusterSpecs,omitempty"`
   677  	// ForceSendFields is a list of field names (e.g. "CloudBigtableClusterSpecs")
   678  	// to unconditionally include in API requests. By default, fields with empty or
   679  	// default values are omitted from API requests. See
   680  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   681  	// details.
   682  	ForceSendFields []string `json:"-"`
   683  	// NullFields is a list of field names (e.g. "CloudBigtableClusterSpecs") to
   684  	// include in API requests with the JSON null value. By default, fields with
   685  	// empty values are omitted from API requests. See
   686  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   687  	NullFields []string `json:"-"`
   688  }
   689  
   690  func (s *GoogleCloudDatacatalogV1CloudBigtableInstanceSpec) MarshalJSON() ([]byte, error) {
   691  	type NoMethod GoogleCloudDatacatalogV1CloudBigtableInstanceSpec
   692  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   693  }
   694  
   695  // GoogleCloudDatacatalogV1CloudBigtableInstanceSpecCloudBigtableClusterSpec:
   696  // Spec that applies to clusters of an Instance of Cloud Bigtable.
   697  type GoogleCloudDatacatalogV1CloudBigtableInstanceSpecCloudBigtableClusterSpec struct {
   698  	// DisplayName: Name of the cluster.
   699  	DisplayName string `json:"displayName,omitempty"`
   700  	// LinkedResource: A link back to the parent resource, in this case Instance.
   701  	LinkedResource string `json:"linkedResource,omitempty"`
   702  	// Location: Location of the cluster, typically a Cloud zone.
   703  	Location string `json:"location,omitempty"`
   704  	// Type: Type of the resource. For a cluster this would be "CLUSTER".
   705  	Type string `json:"type,omitempty"`
   706  	// ForceSendFields is a list of field names (e.g. "DisplayName") to
   707  	// unconditionally include in API requests. By default, fields with empty or
   708  	// default values are omitted from API requests. See
   709  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   710  	// details.
   711  	ForceSendFields []string `json:"-"`
   712  	// NullFields is a list of field names (e.g. "DisplayName") to include in API
   713  	// requests with the JSON null value. By default, fields with empty values are
   714  	// omitted from API requests. See
   715  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   716  	NullFields []string `json:"-"`
   717  }
   718  
   719  func (s *GoogleCloudDatacatalogV1CloudBigtableInstanceSpecCloudBigtableClusterSpec) MarshalJSON() ([]byte, error) {
   720  	type NoMethod GoogleCloudDatacatalogV1CloudBigtableInstanceSpecCloudBigtableClusterSpec
   721  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   722  }
   723  
   724  // GoogleCloudDatacatalogV1CloudBigtableSystemSpec: Specification that applies
   725  // to all entries that are part of `CLOUD_BIGTABLE` system
   726  // (user_specified_type)
   727  type GoogleCloudDatacatalogV1CloudBigtableSystemSpec struct {
   728  	// InstanceDisplayName: Display name of the Instance. This is user specified
   729  	// and different from the resource name.
   730  	InstanceDisplayName string `json:"instanceDisplayName,omitempty"`
   731  	// ForceSendFields is a list of field names (e.g. "InstanceDisplayName") to
   732  	// unconditionally include in API requests. By default, fields with empty or
   733  	// default values are omitted from API requests. See
   734  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   735  	// details.
   736  	ForceSendFields []string `json:"-"`
   737  	// NullFields is a list of field names (e.g. "InstanceDisplayName") to include
   738  	// in API requests with the JSON null value. By default, fields with empty
   739  	// values are omitted from API requests. See
   740  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   741  	NullFields []string `json:"-"`
   742  }
   743  
   744  func (s *GoogleCloudDatacatalogV1CloudBigtableSystemSpec) MarshalJSON() ([]byte, error) {
   745  	type NoMethod GoogleCloudDatacatalogV1CloudBigtableSystemSpec
   746  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   747  }
   748  
   749  // GoogleCloudDatacatalogV1CloudSqlBigQueryConnectionSpec: Specification for
   750  // the BigQuery connection to a Cloud SQL instance.
   751  type GoogleCloudDatacatalogV1CloudSqlBigQueryConnectionSpec struct {
   752  	// Database: Database name.
   753  	Database string `json:"database,omitempty"`
   754  	// InstanceId: Cloud SQL instance ID in the format of
   755  	// `project:location:instance`.
   756  	InstanceId string `json:"instanceId,omitempty"`
   757  	// Type: Type of the Cloud SQL database.
   758  	//
   759  	// Possible values:
   760  	//   "DATABASE_TYPE_UNSPECIFIED" - Unspecified database type.
   761  	//   "POSTGRES" - Cloud SQL for PostgreSQL.
   762  	//   "MYSQL" - Cloud SQL for MySQL.
   763  	Type string `json:"type,omitempty"`
   764  	// ForceSendFields is a list of field names (e.g. "Database") to
   765  	// unconditionally include in API requests. By default, fields with empty or
   766  	// default values are omitted from API requests. See
   767  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   768  	// details.
   769  	ForceSendFields []string `json:"-"`
   770  	// NullFields is a list of field names (e.g. "Database") to include in API
   771  	// requests with the JSON null value. By default, fields with empty values are
   772  	// omitted from API requests. See
   773  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   774  	NullFields []string `json:"-"`
   775  }
   776  
   777  func (s *GoogleCloudDatacatalogV1CloudSqlBigQueryConnectionSpec) MarshalJSON() ([]byte, error) {
   778  	type NoMethod GoogleCloudDatacatalogV1CloudSqlBigQueryConnectionSpec
   779  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   780  }
   781  
   782  // GoogleCloudDatacatalogV1ColumnSchema: A column within a schema. Columns can
   783  // be nested inside other columns.
   784  type GoogleCloudDatacatalogV1ColumnSchema struct {
   785  	// Column: Required. Name of the column. Must be a UTF-8 string without dots
   786  	// (.). The maximum size is 64 bytes.
   787  	Column string `json:"column,omitempty"`
   788  	// DefaultValue: Optional. Default value for the column.
   789  	DefaultValue string `json:"defaultValue,omitempty"`
   790  	// Description: Optional. Description of the column. Default value is an empty
   791  	// string. The description must be a UTF-8 string with the maximum size of 2000
   792  	// bytes.
   793  	Description string `json:"description,omitempty"`
   794  	// GcRule: Optional. Garbage collection policy for the column or column family.
   795  	// Applies to systems like Cloud Bigtable.
   796  	GcRule string `json:"gcRule,omitempty"`
   797  	// HighestIndexingType: Optional. Most important inclusion of this column.
   798  	//
   799  	// Possible values:
   800  	//   "INDEXING_TYPE_UNSPECIFIED" - Unspecified.
   801  	//   "INDEXING_TYPE_NONE" - Column not a part of an index.
   802  	//   "INDEXING_TYPE_NON_UNIQUE" - Column Part of non unique index.
   803  	//   "INDEXING_TYPE_UNIQUE" - Column part of unique index.
   804  	//   "INDEXING_TYPE_PRIMARY_KEY" - Column part of the primary key.
   805  	HighestIndexingType string `json:"highestIndexingType,omitempty"`
   806  	// LookerColumnSpec: Looker specific column info of this column.
   807  	LookerColumnSpec *GoogleCloudDatacatalogV1ColumnSchemaLookerColumnSpec `json:"lookerColumnSpec,omitempty"`
   808  	// Mode: Optional. A column's mode indicates whether values in this column are
   809  	// required, nullable, or repeated. Only `NULLABLE`, `REQUIRED`, and `REPEATED`
   810  	// values are supported. Default mode is `NULLABLE`.
   811  	Mode string `json:"mode,omitempty"`
   812  	// OrdinalPosition: Optional. Ordinal position
   813  	OrdinalPosition int64 `json:"ordinalPosition,omitempty"`
   814  	// RangeElementType: Optional. The subtype of the RANGE, if the type of this
   815  	// field is RANGE. If the type is RANGE, this field is required. Possible
   816  	// values for the field element type of a RANGE include: * DATE * DATETIME *
   817  	// TIMESTAMP
   818  	RangeElementType *GoogleCloudDatacatalogV1ColumnSchemaFieldElementType `json:"rangeElementType,omitempty"`
   819  	// Subcolumns: Optional. Schema of sub-columns. A column can have zero or more
   820  	// sub-columns.
   821  	Subcolumns []*GoogleCloudDatacatalogV1ColumnSchema `json:"subcolumns,omitempty"`
   822  	// Type: Required. Type of the column. Must be a UTF-8 string with the maximum
   823  	// size of 128 bytes.
   824  	Type string `json:"type,omitempty"`
   825  	// ForceSendFields is a list of field names (e.g. "Column") to unconditionally
   826  	// include in API requests. By default, fields with empty or default values are
   827  	// omitted from API requests. See
   828  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   829  	// details.
   830  	ForceSendFields []string `json:"-"`
   831  	// NullFields is a list of field names (e.g. "Column") to include in API
   832  	// requests with the JSON null value. By default, fields with empty values are
   833  	// omitted from API requests. See
   834  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   835  	NullFields []string `json:"-"`
   836  }
   837  
   838  func (s *GoogleCloudDatacatalogV1ColumnSchema) MarshalJSON() ([]byte, error) {
   839  	type NoMethod GoogleCloudDatacatalogV1ColumnSchema
   840  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   841  }
   842  
   843  // GoogleCloudDatacatalogV1ColumnSchemaFieldElementType: Represents the type of
   844  // a field element.
   845  type GoogleCloudDatacatalogV1ColumnSchemaFieldElementType struct {
   846  	// Type: Required. The type of a field element. See ColumnSchema.type.
   847  	Type string `json:"type,omitempty"`
   848  	// ForceSendFields is a list of field names (e.g. "Type") to unconditionally
   849  	// include in API requests. By default, fields with empty or default values are
   850  	// omitted from API requests. See
   851  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   852  	// details.
   853  	ForceSendFields []string `json:"-"`
   854  	// NullFields is a list of field names (e.g. "Type") to include in API requests
   855  	// with the JSON null value. By default, fields with empty values are omitted
   856  	// from API requests. See
   857  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   858  	NullFields []string `json:"-"`
   859  }
   860  
   861  func (s *GoogleCloudDatacatalogV1ColumnSchemaFieldElementType) MarshalJSON() ([]byte, error) {
   862  	type NoMethod GoogleCloudDatacatalogV1ColumnSchemaFieldElementType
   863  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   864  }
   865  
   866  // GoogleCloudDatacatalogV1ColumnSchemaLookerColumnSpec: Column info specific
   867  // to Looker System.
   868  type GoogleCloudDatacatalogV1ColumnSchemaLookerColumnSpec struct {
   869  	// Type: Looker specific column type of this column.
   870  	//
   871  	// Possible values:
   872  	//   "LOOKER_COLUMN_TYPE_UNSPECIFIED" - Unspecified.
   873  	//   "DIMENSION" - Dimension.
   874  	//   "DIMENSION_GROUP" - Dimension group - parent for Dimension.
   875  	//   "FILTER" - Filter.
   876  	//   "MEASURE" - Measure.
   877  	//   "PARAMETER" - Parameter.
   878  	Type string `json:"type,omitempty"`
   879  	// ForceSendFields is a list of field names (e.g. "Type") to unconditionally
   880  	// include in API requests. By default, fields with empty or default values are
   881  	// omitted from API requests. See
   882  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   883  	// details.
   884  	ForceSendFields []string `json:"-"`
   885  	// NullFields is a list of field names (e.g. "Type") to include in API requests
   886  	// with the JSON null value. By default, fields with empty values are omitted
   887  	// from API requests. See
   888  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   889  	NullFields []string `json:"-"`
   890  }
   891  
   892  func (s *GoogleCloudDatacatalogV1ColumnSchemaLookerColumnSpec) MarshalJSON() ([]byte, error) {
   893  	type NoMethod GoogleCloudDatacatalogV1ColumnSchemaLookerColumnSpec
   894  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   895  }
   896  
   897  // GoogleCloudDatacatalogV1CommonUsageStats: Common statistics on the entry's
   898  // usage. They can be set on any system.
   899  type GoogleCloudDatacatalogV1CommonUsageStats struct {
   900  	// ViewCount: View count in source system.
   901  	ViewCount int64 `json:"viewCount,omitempty,string"`
   902  	// ForceSendFields is a list of field names (e.g. "ViewCount") to
   903  	// unconditionally include in API requests. By default, fields with empty or
   904  	// default values are omitted from API requests. See
   905  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   906  	// details.
   907  	ForceSendFields []string `json:"-"`
   908  	// NullFields is a list of field names (e.g. "ViewCount") to include in API
   909  	// requests with the JSON null value. By default, fields with empty values are
   910  	// omitted from API requests. See
   911  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   912  	NullFields []string `json:"-"`
   913  }
   914  
   915  func (s *GoogleCloudDatacatalogV1CommonUsageStats) MarshalJSON() ([]byte, error) {
   916  	type NoMethod GoogleCloudDatacatalogV1CommonUsageStats
   917  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   918  }
   919  
   920  // GoogleCloudDatacatalogV1Contacts: Contact people for the entry.
   921  type GoogleCloudDatacatalogV1Contacts struct {
   922  	// People: The list of contact people for the entry.
   923  	People []*GoogleCloudDatacatalogV1ContactsPerson `json:"people,omitempty"`
   924  	// ForceSendFields is a list of field names (e.g. "People") to unconditionally
   925  	// include in API requests. By default, fields with empty or default values are
   926  	// omitted from API requests. See
   927  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   928  	// details.
   929  	ForceSendFields []string `json:"-"`
   930  	// NullFields is a list of field names (e.g. "People") to include in API
   931  	// requests with the JSON null value. By default, fields with empty values are
   932  	// omitted from API requests. See
   933  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   934  	NullFields []string `json:"-"`
   935  }
   936  
   937  func (s *GoogleCloudDatacatalogV1Contacts) MarshalJSON() ([]byte, error) {
   938  	type NoMethod GoogleCloudDatacatalogV1Contacts
   939  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   940  }
   941  
   942  // GoogleCloudDatacatalogV1ContactsPerson: A contact person for the entry.
   943  type GoogleCloudDatacatalogV1ContactsPerson struct {
   944  	// Designation: Designation of the person, for example, Data Steward.
   945  	Designation string `json:"designation,omitempty"`
   946  	// Email: Email of the person in the format of `john.doe@xyz`, ``, or `John
   947  	// Doe`.
   948  	Email string `json:"email,omitempty"`
   949  	// ForceSendFields is a list of field names (e.g. "Designation") to
   950  	// unconditionally include in API requests. By default, fields with empty or
   951  	// default values are omitted from API requests. See
   952  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   953  	// details.
   954  	ForceSendFields []string `json:"-"`
   955  	// NullFields is a list of field names (e.g. "Designation") to include in API
   956  	// requests with the JSON null value. By default, fields with empty values are
   957  	// omitted from API requests. See
   958  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   959  	NullFields []string `json:"-"`
   960  }
   961  
   962  func (s *GoogleCloudDatacatalogV1ContactsPerson) MarshalJSON() ([]byte, error) {
   963  	type NoMethod GoogleCloudDatacatalogV1ContactsPerson
   964  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   965  }
   966  
   967  // GoogleCloudDatacatalogV1DataSource: Physical location of an entry.
   968  type GoogleCloudDatacatalogV1DataSource struct {
   969  	// Resource: Full name of a resource as defined by the service. For example:
   970  	// `//bigquery.googleapis.com/projects/{PROJECT_ID}/locations/{LOCATION}/dataset
   971  	// s/{DATASET_ID}/tables/{TABLE_ID}`
   972  	Resource string `json:"resource,omitempty"`
   973  	// Service: Service that physically stores the data.
   974  	//
   975  	// Possible values:
   976  	//   "SERVICE_UNSPECIFIED" - Default unknown service.
   977  	//   "CLOUD_STORAGE" - Google Cloud Storage service.
   978  	//   "BIGQUERY" - BigQuery service.
   979  	Service string `json:"service,omitempty"`
   980  	// SourceEntry: Output only. Data Catalog entry name, if applicable.
   981  	SourceEntry string `json:"sourceEntry,omitempty"`
   982  	// StorageProperties: Detailed properties of the underlying storage.
   983  	StorageProperties *GoogleCloudDatacatalogV1StorageProperties `json:"storageProperties,omitempty"`
   984  	// ForceSendFields is a list of field names (e.g. "Resource") to
   985  	// unconditionally include in API requests. By default, fields with empty or
   986  	// default values are omitted from API requests. See
   987  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   988  	// details.
   989  	ForceSendFields []string `json:"-"`
   990  	// NullFields is a list of field names (e.g. "Resource") to include in API
   991  	// requests with the JSON null value. By default, fields with empty values are
   992  	// omitted from API requests. See
   993  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   994  	NullFields []string `json:"-"`
   995  }
   996  
   997  func (s *GoogleCloudDatacatalogV1DataSource) MarshalJSON() ([]byte, error) {
   998  	type NoMethod GoogleCloudDatacatalogV1DataSource
   999  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1000  }
  1001  
  1002  // GoogleCloudDatacatalogV1DataSourceConnectionSpec: Specification that applies
  1003  // to a data source connection. Valid only for entries with the
  1004  // `DATA_SOURCE_CONNECTION` type. Only one of internal specs can be set at the
  1005  // time, and cannot be changed later.
  1006  type GoogleCloudDatacatalogV1DataSourceConnectionSpec struct {
  1007  	// BigqueryConnectionSpec: Output only. Fields specific to BigQuery
  1008  	// connections.
  1009  	BigqueryConnectionSpec *GoogleCloudDatacatalogV1BigQueryConnectionSpec `json:"bigqueryConnectionSpec,omitempty"`
  1010  	// ForceSendFields is a list of field names (e.g. "BigqueryConnectionSpec") to
  1011  	// unconditionally include in API requests. By default, fields with empty or
  1012  	// default values are omitted from API requests. See
  1013  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1014  	// details.
  1015  	ForceSendFields []string `json:"-"`
  1016  	// NullFields is a list of field names (e.g. "BigqueryConnectionSpec") to
  1017  	// include in API requests with the JSON null value. By default, fields with
  1018  	// empty values are omitted from API requests. See
  1019  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1020  	NullFields []string `json:"-"`
  1021  }
  1022  
  1023  func (s *GoogleCloudDatacatalogV1DataSourceConnectionSpec) MarshalJSON() ([]byte, error) {
  1024  	type NoMethod GoogleCloudDatacatalogV1DataSourceConnectionSpec
  1025  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1026  }
  1027  
  1028  // GoogleCloudDatacatalogV1DatabaseTableSpec: Specification that applies to a
  1029  // table resource. Valid only for entries with the `TABLE` type.
  1030  type GoogleCloudDatacatalogV1DatabaseTableSpec struct {
  1031  	// DatabaseViewSpec: Spec what aplies to tables that are actually views. Not
  1032  	// set for "real" tables.
  1033  	DatabaseViewSpec *GoogleCloudDatacatalogV1DatabaseTableSpecDatabaseViewSpec `json:"databaseViewSpec,omitempty"`
  1034  	// DataplexTable: Output only. Fields specific to a Dataplex table and present
  1035  	// only in the Dataplex table entries.
  1036  	DataplexTable *GoogleCloudDatacatalogV1DataplexTableSpec `json:"dataplexTable,omitempty"`
  1037  	// Type: Type of this table.
  1038  	//
  1039  	// Possible values:
  1040  	//   "TABLE_TYPE_UNSPECIFIED" - Default unknown table type.
  1041  	//   "NATIVE" - Native table.
  1042  	//   "EXTERNAL" - External table.
  1043  	Type string `json:"type,omitempty"`
  1044  	// ForceSendFields is a list of field names (e.g. "DatabaseViewSpec") to
  1045  	// unconditionally include in API requests. By default, fields with empty or
  1046  	// default values are omitted from API requests. See
  1047  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1048  	// details.
  1049  	ForceSendFields []string `json:"-"`
  1050  	// NullFields is a list of field names (e.g. "DatabaseViewSpec") to include in
  1051  	// API requests with the JSON null value. By default, fields with empty values
  1052  	// are omitted from API requests. See
  1053  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1054  	NullFields []string `json:"-"`
  1055  }
  1056  
  1057  func (s *GoogleCloudDatacatalogV1DatabaseTableSpec) MarshalJSON() ([]byte, error) {
  1058  	type NoMethod GoogleCloudDatacatalogV1DatabaseTableSpec
  1059  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1060  }
  1061  
  1062  // GoogleCloudDatacatalogV1DatabaseTableSpecDatabaseViewSpec: Specification
  1063  // that applies to database view.
  1064  type GoogleCloudDatacatalogV1DatabaseTableSpecDatabaseViewSpec struct {
  1065  	// BaseTable: Name of a singular table this view reflects one to one.
  1066  	BaseTable string `json:"baseTable,omitempty"`
  1067  	// SqlQuery: SQL query used to generate this view.
  1068  	SqlQuery string `json:"sqlQuery,omitempty"`
  1069  	// ViewType: Type of this view.
  1070  	//
  1071  	// Possible values:
  1072  	//   "VIEW_TYPE_UNSPECIFIED" - Default unknown view type.
  1073  	//   "STANDARD_VIEW" - Standard view.
  1074  	//   "MATERIALIZED_VIEW" - Materialized view.
  1075  	ViewType string `json:"viewType,omitempty"`
  1076  	// ForceSendFields is a list of field names (e.g. "BaseTable") to
  1077  	// unconditionally include in API requests. By default, fields with empty or
  1078  	// default values are omitted from API requests. See
  1079  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1080  	// details.
  1081  	ForceSendFields []string `json:"-"`
  1082  	// NullFields is a list of field names (e.g. "BaseTable") to include in API
  1083  	// requests with the JSON null value. By default, fields with empty values are
  1084  	// omitted from API requests. See
  1085  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1086  	NullFields []string `json:"-"`
  1087  }
  1088  
  1089  func (s *GoogleCloudDatacatalogV1DatabaseTableSpecDatabaseViewSpec) MarshalJSON() ([]byte, error) {
  1090  	type NoMethod GoogleCloudDatacatalogV1DatabaseTableSpecDatabaseViewSpec
  1091  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1092  }
  1093  
  1094  // GoogleCloudDatacatalogV1DataplexExternalTable: External table registered by
  1095  // Dataplex. Dataplex publishes data discovered from an asset into multiple
  1096  // other systems (BigQuery, DPMS) in form of tables. We call them "external
  1097  // tables". External tables are also synced into the Data Catalog. This message
  1098  // contains pointers to those external tables (fully qualified name, resource
  1099  // name et cetera) within the Data Catalog.
  1100  type GoogleCloudDatacatalogV1DataplexExternalTable struct {
  1101  	// DataCatalogEntry: Name of the Data Catalog entry representing the external
  1102  	// table.
  1103  	DataCatalogEntry string `json:"dataCatalogEntry,omitempty"`
  1104  	// FullyQualifiedName: Fully qualified name (FQN) of the external table.
  1105  	FullyQualifiedName string `json:"fullyQualifiedName,omitempty"`
  1106  	// GoogleCloudResource: Google Cloud resource name of the external table.
  1107  	GoogleCloudResource string `json:"googleCloudResource,omitempty"`
  1108  	// System: Service in which the external table is registered.
  1109  	//
  1110  	// Possible values:
  1111  	//   "INTEGRATED_SYSTEM_UNSPECIFIED" - Default unknown system.
  1112  	//   "BIGQUERY" - BigQuery.
  1113  	//   "CLOUD_PUBSUB" - Cloud Pub/Sub.
  1114  	//   "DATAPROC_METASTORE" - Dataproc Metastore.
  1115  	//   "DATAPLEX" - Dataplex.
  1116  	//   "CLOUD_SPANNER" - Cloud Spanner
  1117  	//   "CLOUD_BIGTABLE" - Cloud Bigtable
  1118  	//   "CLOUD_SQL" - Cloud Sql
  1119  	//   "LOOKER" - Looker
  1120  	//   "VERTEX_AI" - Vertex AI
  1121  	System string `json:"system,omitempty"`
  1122  	// ForceSendFields is a list of field names (e.g. "DataCatalogEntry") to
  1123  	// unconditionally include in API requests. By default, fields with empty or
  1124  	// default values are omitted from API requests. See
  1125  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1126  	// details.
  1127  	ForceSendFields []string `json:"-"`
  1128  	// NullFields is a list of field names (e.g. "DataCatalogEntry") to include in
  1129  	// API requests with the JSON null value. By default, fields with empty values
  1130  	// are omitted from API requests. See
  1131  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1132  	NullFields []string `json:"-"`
  1133  }
  1134  
  1135  func (s *GoogleCloudDatacatalogV1DataplexExternalTable) MarshalJSON() ([]byte, error) {
  1136  	type NoMethod GoogleCloudDatacatalogV1DataplexExternalTable
  1137  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1138  }
  1139  
  1140  // GoogleCloudDatacatalogV1DataplexFilesetSpec: Entry specyfication for a
  1141  // Dataplex fileset.
  1142  type GoogleCloudDatacatalogV1DataplexFilesetSpec struct {
  1143  	// DataplexSpec: Common Dataplex fields.
  1144  	DataplexSpec *GoogleCloudDatacatalogV1DataplexSpec `json:"dataplexSpec,omitempty"`
  1145  	// ForceSendFields is a list of field names (e.g. "DataplexSpec") to
  1146  	// unconditionally include in API requests. By default, fields with empty or
  1147  	// default values are omitted from API requests. See
  1148  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1149  	// details.
  1150  	ForceSendFields []string `json:"-"`
  1151  	// NullFields is a list of field names (e.g. "DataplexSpec") to include in API
  1152  	// requests with the JSON null value. By default, fields with empty values are
  1153  	// omitted from API requests. See
  1154  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1155  	NullFields []string `json:"-"`
  1156  }
  1157  
  1158  func (s *GoogleCloudDatacatalogV1DataplexFilesetSpec) MarshalJSON() ([]byte, error) {
  1159  	type NoMethod GoogleCloudDatacatalogV1DataplexFilesetSpec
  1160  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1161  }
  1162  
  1163  // GoogleCloudDatacatalogV1DataplexSpec: Common Dataplex fields.
  1164  type GoogleCloudDatacatalogV1DataplexSpec struct {
  1165  	// Asset: Fully qualified resource name of an asset in Dataplex, to which the
  1166  	// underlying data source (Cloud Storage bucket or BigQuery dataset) of the
  1167  	// entity is attached.
  1168  	Asset string `json:"asset,omitempty"`
  1169  	// CompressionFormat: Compression format of the data, e.g., zip, gzip etc.
  1170  	CompressionFormat string `json:"compressionFormat,omitempty"`
  1171  	// DataFormat: Format of the data.
  1172  	DataFormat *GoogleCloudDatacatalogV1PhysicalSchema `json:"dataFormat,omitempty"`
  1173  	// ProjectId: Project ID of the underlying Cloud Storage or BigQuery data. Note
  1174  	// that this may not be the same project as the correspondingly Dataplex lake /
  1175  	// zone / asset.
  1176  	ProjectId string `json:"projectId,omitempty"`
  1177  	// ForceSendFields is a list of field names (e.g. "Asset") to unconditionally
  1178  	// include in API requests. By default, fields with empty or default values are
  1179  	// omitted from API requests. See
  1180  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1181  	// details.
  1182  	ForceSendFields []string `json:"-"`
  1183  	// NullFields is a list of field names (e.g. "Asset") to include in API
  1184  	// requests with the JSON null value. By default, fields with empty values are
  1185  	// omitted from API requests. See
  1186  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1187  	NullFields []string `json:"-"`
  1188  }
  1189  
  1190  func (s *GoogleCloudDatacatalogV1DataplexSpec) MarshalJSON() ([]byte, error) {
  1191  	type NoMethod GoogleCloudDatacatalogV1DataplexSpec
  1192  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1193  }
  1194  
  1195  // GoogleCloudDatacatalogV1DataplexTableSpec: Entry specification for a
  1196  // Dataplex table.
  1197  type GoogleCloudDatacatalogV1DataplexTableSpec struct {
  1198  	// DataplexSpec: Common Dataplex fields.
  1199  	DataplexSpec *GoogleCloudDatacatalogV1DataplexSpec `json:"dataplexSpec,omitempty"`
  1200  	// ExternalTables: List of external tables registered by Dataplex in other
  1201  	// systems based on the same underlying data. External tables allow to query
  1202  	// this data in those systems.
  1203  	ExternalTables []*GoogleCloudDatacatalogV1DataplexExternalTable `json:"externalTables,omitempty"`
  1204  	// UserManaged: Indicates if the table schema is managed by the user or not.
  1205  	UserManaged bool `json:"userManaged,omitempty"`
  1206  	// ForceSendFields is a list of field names (e.g. "DataplexSpec") to
  1207  	// unconditionally include in API requests. By default, fields with empty or
  1208  	// default values are omitted from API requests. See
  1209  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1210  	// details.
  1211  	ForceSendFields []string `json:"-"`
  1212  	// NullFields is a list of field names (e.g. "DataplexSpec") to include in API
  1213  	// requests with the JSON null value. By default, fields with empty values are
  1214  	// omitted from API requests. See
  1215  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1216  	NullFields []string `json:"-"`
  1217  }
  1218  
  1219  func (s *GoogleCloudDatacatalogV1DataplexTableSpec) MarshalJSON() ([]byte, error) {
  1220  	type NoMethod GoogleCloudDatacatalogV1DataplexTableSpec
  1221  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1222  }
  1223  
  1224  // GoogleCloudDatacatalogV1DatasetSpec: Specification that applies to a
  1225  // dataset. Valid only for entries with the `DATASET` type.
  1226  type GoogleCloudDatacatalogV1DatasetSpec struct {
  1227  	// VertexDatasetSpec: Vertex AI Dataset specific fields
  1228  	VertexDatasetSpec *GoogleCloudDatacatalogV1VertexDatasetSpec `json:"vertexDatasetSpec,omitempty"`
  1229  	// ForceSendFields is a list of field names (e.g. "VertexDatasetSpec") to
  1230  	// unconditionally include in API requests. By default, fields with empty or
  1231  	// default values are omitted from API requests. See
  1232  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1233  	// details.
  1234  	ForceSendFields []string `json:"-"`
  1235  	// NullFields is a list of field names (e.g. "VertexDatasetSpec") to include in
  1236  	// API requests with the JSON null value. By default, fields with empty values
  1237  	// are omitted from API requests. See
  1238  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1239  	NullFields []string `json:"-"`
  1240  }
  1241  
  1242  func (s *GoogleCloudDatacatalogV1DatasetSpec) MarshalJSON() ([]byte, error) {
  1243  	type NoMethod GoogleCloudDatacatalogV1DatasetSpec
  1244  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1245  }
  1246  
  1247  // GoogleCloudDatacatalogV1DumpItem: Wrapper for any item that can be contained
  1248  // in the dump.
  1249  type GoogleCloudDatacatalogV1DumpItem struct {
  1250  	// TaggedEntry: Entry and its tags.
  1251  	TaggedEntry *GoogleCloudDatacatalogV1TaggedEntry `json:"taggedEntry,omitempty"`
  1252  	// ForceSendFields is a list of field names (e.g. "TaggedEntry") to
  1253  	// unconditionally include in API requests. By default, fields with empty or
  1254  	// default values are omitted from API requests. See
  1255  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1256  	// details.
  1257  	ForceSendFields []string `json:"-"`
  1258  	// NullFields is a list of field names (e.g. "TaggedEntry") to include in API
  1259  	// requests with the JSON null value. By default, fields with empty values are
  1260  	// omitted from API requests. See
  1261  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1262  	NullFields []string `json:"-"`
  1263  }
  1264  
  1265  func (s *GoogleCloudDatacatalogV1DumpItem) MarshalJSON() ([]byte, error) {
  1266  	type NoMethod GoogleCloudDatacatalogV1DumpItem
  1267  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1268  }
  1269  
  1270  // GoogleCloudDatacatalogV1Entry: Entry metadata. A Data Catalog entry
  1271  // represents another resource in Google Cloud Platform (such as a BigQuery
  1272  // dataset or a Pub/Sub topic) or outside of it. You can use the
  1273  // `linked_resource` field in the entry resource to refer to the original
  1274  // resource ID of the source system. An entry resource contains resource
  1275  // details, for example, its schema. Additionally, you can attach flexible
  1276  // metadata to an entry in the form of a Tag.
  1277  type GoogleCloudDatacatalogV1Entry struct {
  1278  	// BigqueryDateShardedSpec: Output only. Specification for a group of BigQuery
  1279  	// tables with the `[prefix]YYYYMMDD` name pattern. For more information, see
  1280  	// [Introduction to partitioned tables]
  1281  	// (https://cloud.google.com/bigquery/docs/partitioned-tables#partitioning_versus_sharding).
  1282  	BigqueryDateShardedSpec *GoogleCloudDatacatalogV1BigQueryDateShardedSpec `json:"bigqueryDateShardedSpec,omitempty"`
  1283  	// BigqueryTableSpec: Output only. Specification that applies to a BigQuery
  1284  	// table. Valid only for entries with the `TABLE` type.
  1285  	BigqueryTableSpec *GoogleCloudDatacatalogV1BigQueryTableSpec `json:"bigqueryTableSpec,omitempty"`
  1286  	// BusinessContext: Business Context of the entry. Not supported for BigQuery
  1287  	// datasets
  1288  	BusinessContext *GoogleCloudDatacatalogV1BusinessContext `json:"businessContext,omitempty"`
  1289  	// CloudBigtableSystemSpec: Specification that applies to Cloud Bigtable
  1290  	// system. Only settable when `integrated_system` is equal to `CLOUD_BIGTABLE`
  1291  	CloudBigtableSystemSpec *GoogleCloudDatacatalogV1CloudBigtableSystemSpec `json:"cloudBigtableSystemSpec,omitempty"`
  1292  	// DataSource: Output only. Physical location of the entry.
  1293  	DataSource *GoogleCloudDatacatalogV1DataSource `json:"dataSource,omitempty"`
  1294  	// DataSourceConnectionSpec: Specification that applies to a data source
  1295  	// connection. Valid only for entries with the `DATA_SOURCE_CONNECTION` type.
  1296  	DataSourceConnectionSpec *GoogleCloudDatacatalogV1DataSourceConnectionSpec `json:"dataSourceConnectionSpec,omitempty"`
  1297  	// DatabaseTableSpec: Specification that applies to a table resource. Valid
  1298  	// only for entries with the `TABLE` or `EXPLORE` type.
  1299  	DatabaseTableSpec *GoogleCloudDatacatalogV1DatabaseTableSpec `json:"databaseTableSpec,omitempty"`
  1300  	// DatasetSpec: Specification that applies to a dataset.
  1301  	DatasetSpec *GoogleCloudDatacatalogV1DatasetSpec `json:"datasetSpec,omitempty"`
  1302  	// Description: Entry description that can consist of several sentences or
  1303  	// paragraphs that describe entry contents. The description must not contain
  1304  	// Unicode non-characters as well as C0 and C1 control codes except tabs (HT),
  1305  	// new lines (LF), carriage returns (CR), and page breaks (FF). The maximum
  1306  	// size is 2000 bytes when encoded in UTF-8. Default value is an empty string.
  1307  	Description string `json:"description,omitempty"`
  1308  	// DisplayName: Display name of an entry. The maximum size is 500 bytes when
  1309  	// encoded in UTF-8. Default value is an empty string.
  1310  	DisplayName string `json:"displayName,omitempty"`
  1311  	// FeatureOnlineStoreSpec: FeatureonlineStore spec for Vertex AI Feature Store.
  1312  	FeatureOnlineStoreSpec *GoogleCloudDatacatalogV1FeatureOnlineStoreSpec `json:"featureOnlineStoreSpec,omitempty"`
  1313  	// FilesetSpec: Specification that applies to a fileset resource. Valid only
  1314  	// for entries with the `FILESET` type.
  1315  	FilesetSpec *GoogleCloudDatacatalogV1FilesetSpec `json:"filesetSpec,omitempty"`
  1316  	// FullyQualifiedName: Fully Qualified Name (FQN)
  1317  	// (https://cloud.google.com//data-catalog/docs/fully-qualified-names) of the
  1318  	// resource. Set automatically for entries representing resources from synced
  1319  	// systems. Settable only during creation, and read-only later. Can be used for
  1320  	// search and lookup of the entries.
  1321  	FullyQualifiedName string `json:"fullyQualifiedName,omitempty"`
  1322  	// GcsFilesetSpec: Specification that applies to a Cloud Storage fileset. Valid
  1323  	// only for entries with the `FILESET` type.
  1324  	GcsFilesetSpec *GoogleCloudDatacatalogV1GcsFilesetSpec `json:"gcsFilesetSpec,omitempty"`
  1325  	// IntegratedSystem: Output only. Indicates the entry's source system that Data
  1326  	// Catalog integrates with, such as BigQuery, Pub/Sub, or Dataproc Metastore.
  1327  	//
  1328  	// Possible values:
  1329  	//   "INTEGRATED_SYSTEM_UNSPECIFIED" - Default unknown system.
  1330  	//   "BIGQUERY" - BigQuery.
  1331  	//   "CLOUD_PUBSUB" - Cloud Pub/Sub.
  1332  	//   "DATAPROC_METASTORE" - Dataproc Metastore.
  1333  	//   "DATAPLEX" - Dataplex.
  1334  	//   "CLOUD_SPANNER" - Cloud Spanner
  1335  	//   "CLOUD_BIGTABLE" - Cloud Bigtable
  1336  	//   "CLOUD_SQL" - Cloud Sql
  1337  	//   "LOOKER" - Looker
  1338  	//   "VERTEX_AI" - Vertex AI
  1339  	IntegratedSystem string `json:"integratedSystem,omitempty"`
  1340  	// Labels: Cloud labels attached to the entry. In Data Catalog, you can create
  1341  	// and modify labels attached only to custom entries. Synced entries have
  1342  	// unmodifiable labels that come from the source system.
  1343  	Labels map[string]string `json:"labels,omitempty"`
  1344  	// LinkedResource: The resource this metadata entry refers to. For Google Cloud
  1345  	// Platform resources, `linked_resource` is the [Full Resource Name]
  1346  	// (https://cloud.google.com/apis/design/resource_names#full_resource_name).
  1347  	// For example, the `linked_resource` for a table resource from BigQuery is:
  1348  	// `//bigquery.googleapis.com/projects/{PROJECT_ID}/datasets/{DATASET_ID}/tables
  1349  	// /{TABLE_ID}` Output only when the entry is one of the types in the
  1350  	// `EntryType` enum. For entries with a `user_specified_type`, this field is
  1351  	// optional and defaults to an empty string. The resource string must contain
  1352  	// only letters (a-z, A-Z), numbers (0-9), underscores (_), periods (.), colons
  1353  	// (:), slashes (/), dashes (-), and hashes (#). The maximum size is 200 bytes
  1354  	// when encoded in UTF-8.
  1355  	LinkedResource string `json:"linkedResource,omitempty"`
  1356  	// LookerSystemSpec: Specification that applies to Looker sysstem. Only
  1357  	// settable when `user_specified_system` is equal to `LOOKER`
  1358  	LookerSystemSpec *GoogleCloudDatacatalogV1LookerSystemSpec `json:"lookerSystemSpec,omitempty"`
  1359  	// ModelSpec: Model specification.
  1360  	ModelSpec *GoogleCloudDatacatalogV1ModelSpec `json:"modelSpec,omitempty"`
  1361  	// Name: Output only. Identifier. The resource name of an entry in URL format.
  1362  	// Note: The entry itself and its child resources might not be stored in the
  1363  	// location specified in its name.
  1364  	Name string `json:"name,omitempty"`
  1365  	// PersonalDetails: Output only. Additional information related to the entry.
  1366  	// Private to the current user.
  1367  	PersonalDetails *GoogleCloudDatacatalogV1PersonalDetails `json:"personalDetails,omitempty"`
  1368  	// RoutineSpec: Specification that applies to a user-defined function or
  1369  	// procedure. Valid only for entries with the `ROUTINE` type.
  1370  	RoutineSpec *GoogleCloudDatacatalogV1RoutineSpec `json:"routineSpec,omitempty"`
  1371  	// Schema: Schema of the entry. An entry might not have any schema attached to
  1372  	// it.
  1373  	Schema *GoogleCloudDatacatalogV1Schema `json:"schema,omitempty"`
  1374  	// ServiceSpec: Specification that applies to a Service resource.
  1375  	ServiceSpec *GoogleCloudDatacatalogV1ServiceSpec `json:"serviceSpec,omitempty"`
  1376  	// SourceSystemTimestamps: Timestamps from the underlying resource, not from
  1377  	// the Data Catalog entry. Output only when the entry has a system listed in
  1378  	// the `IntegratedSystem` enum. For entries with `user_specified_system`, this
  1379  	// field is optional and defaults to an empty timestamp.
  1380  	SourceSystemTimestamps *GoogleCloudDatacatalogV1SystemTimestamps `json:"sourceSystemTimestamps,omitempty"`
  1381  	// SqlDatabaseSystemSpec: Specification that applies to a relational database
  1382  	// system. Only settable when `user_specified_system` is equal to
  1383  	// `SQL_DATABASE`
  1384  	SqlDatabaseSystemSpec *GoogleCloudDatacatalogV1SqlDatabaseSystemSpec `json:"sqlDatabaseSystemSpec,omitempty"`
  1385  	// Type: The type of the entry. For details, see `EntryType` (#entrytype).
  1386  	//
  1387  	// Possible values:
  1388  	//   "ENTRY_TYPE_UNSPECIFIED" - Default unknown type.
  1389  	//   "TABLE" - The entry type that has a GoogleSQL schema, including logical
  1390  	// views.
  1391  	//   "MODEL" - The type of models. For more information, see [Supported models
  1392  	// in BigQuery ML](/bigquery/docs/bqml-introduction#supported_models).
  1393  	//   "DATA_STREAM" - An entry type for streaming entries. For example, a
  1394  	// Pub/Sub topic.
  1395  	//   "FILESET" - An entry type for a set of files or objects. For example, a
  1396  	// Cloud Storage fileset.
  1397  	//   "CLUSTER" - A group of servers that work together. For example, a Kafka
  1398  	// cluster.
  1399  	//   "DATABASE" - A database.
  1400  	//   "DATA_SOURCE_CONNECTION" - Connection to a data source. For example, a
  1401  	// BigQuery connection.
  1402  	//   "ROUTINE" - Routine, for example, a BigQuery routine.
  1403  	//   "LAKE" - A Dataplex lake.
  1404  	//   "ZONE" - A Dataplex zone.
  1405  	//   "SERVICE" - A service, for example, a Dataproc Metastore service.
  1406  	//   "DATABASE_SCHEMA" - Schema within a relational database.
  1407  	//   "DASHBOARD" - A Dashboard, for example from Looker.
  1408  	//   "EXPLORE" - A Looker Explore. For more information, see [Looker Explore
  1409  	// API]
  1410  	// (https://developers.looker.com/api/explorer/4.0/methods/LookmlModel/lookml_model_explore).
  1411  	//   "LOOK" - A Looker Look. For more information, see [Looker Look API]
  1412  	// (https://developers.looker.com/api/explorer/4.0/methods/Look).
  1413  	//   "FEATURE_ONLINE_STORE" - Feature Online Store resource in Vertex AI
  1414  	// Feature Store.
  1415  	//   "FEATURE_VIEW" - Feature View resource in Vertex AI Feature Store.
  1416  	//   "FEATURE_GROUP" - Feature Group resource in Vertex AI Feature Store.
  1417  	Type string `json:"type,omitempty"`
  1418  	// UsageSignal: Resource usage statistics.
  1419  	UsageSignal *GoogleCloudDatacatalogV1UsageSignal `json:"usageSignal,omitempty"`
  1420  	// UserSpecifiedSystem: Indicates the entry's source system that Data Catalog
  1421  	// doesn't automatically integrate with. The `user_specified_system` string has
  1422  	// the following limitations: * Is case insensitive. * Must begin with a letter
  1423  	// or underscore. * Can only contain letters, numbers, and underscores. * Must
  1424  	// be at least 1 character and at most 64 characters long.
  1425  	UserSpecifiedSystem string `json:"userSpecifiedSystem,omitempty"`
  1426  	// UserSpecifiedType: Custom entry type that doesn't match any of the values
  1427  	// allowed for input and listed in the `EntryType` enum. When creating an
  1428  	// entry, first check the type values in the enum. If there are no appropriate
  1429  	// types for the new entry, provide a custom value, for example,
  1430  	// `my_special_type`. The `user_specified_type` string has the following
  1431  	// limitations: * Is case insensitive. * Must begin with a letter or
  1432  	// underscore. * Can only contain letters, numbers, and underscores. * Must be
  1433  	// at least 1 character and at most 64 characters long.
  1434  	UserSpecifiedType string `json:"userSpecifiedType,omitempty"`
  1435  	// ForceSendFields is a list of field names (e.g. "BigqueryDateShardedSpec") to
  1436  	// unconditionally include in API requests. By default, fields with empty or
  1437  	// default values are omitted from API requests. See
  1438  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1439  	// details.
  1440  	ForceSendFields []string `json:"-"`
  1441  	// NullFields is a list of field names (e.g. "BigqueryDateShardedSpec") to
  1442  	// include in API requests with the JSON null value. By default, fields with
  1443  	// empty values are omitted from API requests. See
  1444  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1445  	NullFields []string `json:"-"`
  1446  }
  1447  
  1448  func (s *GoogleCloudDatacatalogV1Entry) MarshalJSON() ([]byte, error) {
  1449  	type NoMethod GoogleCloudDatacatalogV1Entry
  1450  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1451  }
  1452  
  1453  // GoogleCloudDatacatalogV1EntryOverview: Entry overview fields for rich text
  1454  // descriptions of entries.
  1455  type GoogleCloudDatacatalogV1EntryOverview struct {
  1456  	// Overview: Entry overview with support for rich text. The overview must only
  1457  	// contain Unicode characters, and should be formatted using HTML. The maximum
  1458  	// length is 10 MiB as this value holds HTML descriptions including encoded
  1459  	// images. The maximum length of the text without images is 100 KiB.
  1460  	Overview string `json:"overview,omitempty"`
  1461  	// ForceSendFields is a list of field names (e.g. "Overview") to
  1462  	// unconditionally include in API requests. By default, fields with empty or
  1463  	// default values are omitted from API requests. See
  1464  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1465  	// details.
  1466  	ForceSendFields []string `json:"-"`
  1467  	// NullFields is a list of field names (e.g. "Overview") to include in API
  1468  	// requests with the JSON null value. By default, fields with empty values are
  1469  	// omitted from API requests. See
  1470  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1471  	NullFields []string `json:"-"`
  1472  }
  1473  
  1474  func (s *GoogleCloudDatacatalogV1EntryOverview) MarshalJSON() ([]byte, error) {
  1475  	type NoMethod GoogleCloudDatacatalogV1EntryOverview
  1476  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1477  }
  1478  
  1479  // GoogleCloudDatacatalogV1FeatureOnlineStoreSpec: Detail description of the
  1480  // source information of a Vertex Feature Online Store.
  1481  type GoogleCloudDatacatalogV1FeatureOnlineStoreSpec struct {
  1482  	// StorageType: Output only. Type of underelaying storage for the
  1483  	// FeatureOnlineStore.
  1484  	//
  1485  	// Possible values:
  1486  	//   "STORAGE_TYPE_UNSPECIFIED" - Should not be used.
  1487  	//   "BIGTABLE" - Underlsying storgae is Bigtable.
  1488  	//   "OPTIMIZED" - Underlaying is optimized online server (Lightning).
  1489  	StorageType string `json:"storageType,omitempty"`
  1490  	// ForceSendFields is a list of field names (e.g. "StorageType") to
  1491  	// unconditionally include in API requests. By default, fields with empty or
  1492  	// default values are omitted from API requests. See
  1493  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1494  	// details.
  1495  	ForceSendFields []string `json:"-"`
  1496  	// NullFields is a list of field names (e.g. "StorageType") to include in API
  1497  	// requests with the JSON null value. By default, fields with empty values are
  1498  	// omitted from API requests. See
  1499  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1500  	NullFields []string `json:"-"`
  1501  }
  1502  
  1503  func (s *GoogleCloudDatacatalogV1FeatureOnlineStoreSpec) MarshalJSON() ([]byte, error) {
  1504  	type NoMethod GoogleCloudDatacatalogV1FeatureOnlineStoreSpec
  1505  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1506  }
  1507  
  1508  // GoogleCloudDatacatalogV1FilesetSpec: Specification that applies to a
  1509  // fileset. Valid only for entries with the 'FILESET' type.
  1510  type GoogleCloudDatacatalogV1FilesetSpec struct {
  1511  	// DataplexFileset: Fields specific to a Dataplex fileset and present only in
  1512  	// the Dataplex fileset entries.
  1513  	DataplexFileset *GoogleCloudDatacatalogV1DataplexFilesetSpec `json:"dataplexFileset,omitempty"`
  1514  	// ForceSendFields is a list of field names (e.g. "DataplexFileset") to
  1515  	// unconditionally include in API requests. By default, fields with empty or
  1516  	// default values are omitted from API requests. See
  1517  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1518  	// details.
  1519  	ForceSendFields []string `json:"-"`
  1520  	// NullFields is a list of field names (e.g. "DataplexFileset") to include in
  1521  	// API requests with the JSON null value. By default, fields with empty values
  1522  	// are omitted from API requests. See
  1523  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1524  	NullFields []string `json:"-"`
  1525  }
  1526  
  1527  func (s *GoogleCloudDatacatalogV1FilesetSpec) MarshalJSON() ([]byte, error) {
  1528  	type NoMethod GoogleCloudDatacatalogV1FilesetSpec
  1529  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1530  }
  1531  
  1532  // GoogleCloudDatacatalogV1GcsFileSpec: Specification of a single file in Cloud
  1533  // Storage.
  1534  type GoogleCloudDatacatalogV1GcsFileSpec struct {
  1535  	// FilePath: Required. Full file path. Example: `gs://bucket_name/a/b.txt`.
  1536  	FilePath string `json:"filePath,omitempty"`
  1537  	// GcsTimestamps: Output only. Creation, modification, and expiration
  1538  	// timestamps of a Cloud Storage file.
  1539  	GcsTimestamps *GoogleCloudDatacatalogV1SystemTimestamps `json:"gcsTimestamps,omitempty"`
  1540  	// SizeBytes: Output only. File size in bytes.
  1541  	SizeBytes int64 `json:"sizeBytes,omitempty,string"`
  1542  	// ForceSendFields is a list of field names (e.g. "FilePath") to
  1543  	// unconditionally include in API requests. By default, fields with empty or
  1544  	// default values are omitted from API requests. See
  1545  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1546  	// details.
  1547  	ForceSendFields []string `json:"-"`
  1548  	// NullFields is a list of field names (e.g. "FilePath") to include in API
  1549  	// requests with the JSON null value. By default, fields with empty values are
  1550  	// omitted from API requests. See
  1551  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1552  	NullFields []string `json:"-"`
  1553  }
  1554  
  1555  func (s *GoogleCloudDatacatalogV1GcsFileSpec) MarshalJSON() ([]byte, error) {
  1556  	type NoMethod GoogleCloudDatacatalogV1GcsFileSpec
  1557  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1558  }
  1559  
  1560  // GoogleCloudDatacatalogV1GcsFilesetSpec: Describes a Cloud Storage fileset
  1561  // entry.
  1562  type GoogleCloudDatacatalogV1GcsFilesetSpec struct {
  1563  	// FilePatterns: Required. Patterns to identify a set of files in Google Cloud
  1564  	// Storage. For more information, see [Wildcard Names]
  1565  	// (https://cloud.google.com/storage/docs/gsutil/addlhelp/WildcardNames). Note:
  1566  	// Currently, bucket wildcards are not supported. Examples of valid
  1567  	// `file_patterns`: * `gs://bucket_name/dir/*`: matches all files in
  1568  	// `bucket_name/dir` directory * `gs://bucket_name/dir/**`: matches all files
  1569  	// in `bucket_name/dir` and all subdirectories * `gs://bucket_name/file*`:
  1570  	// matches files prefixed by `file` in `bucket_name` *
  1571  	// `gs://bucket_name/??.txt`: matches files with two characters followed by
  1572  	// `.txt` in `bucket_name` * `gs://bucket_name/[aeiou].txt`: matches files that
  1573  	// contain a single vowel character followed by `.txt` in `bucket_name` *
  1574  	// `gs://bucket_name/[a-m].txt`: matches files that contain `a`, `b`, ... or
  1575  	// `m` followed by `.txt` in `bucket_name` * `gs://bucket_name/a/*/b`: matches
  1576  	// all files in `bucket_name` that match the `a/*/b` pattern, such as `a/c/b`,
  1577  	// `a/d/b` * `gs://another_bucket/a.txt`: matches `gs://another_bucket/a.txt`
  1578  	// You can combine wildcards to match complex sets of files, for example:
  1579  	// `gs://bucket_name/[a-m]??.j*g`
  1580  	FilePatterns []string `json:"filePatterns,omitempty"`
  1581  	// SampleGcsFileSpecs: Output only. Sample files contained in this fileset, not
  1582  	// all files contained in this fileset are represented here.
  1583  	SampleGcsFileSpecs []*GoogleCloudDatacatalogV1GcsFileSpec `json:"sampleGcsFileSpecs,omitempty"`
  1584  	// ForceSendFields is a list of field names (e.g. "FilePatterns") to
  1585  	// unconditionally include in API requests. By default, fields with empty or
  1586  	// default values are omitted from API requests. See
  1587  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1588  	// details.
  1589  	ForceSendFields []string `json:"-"`
  1590  	// NullFields is a list of field names (e.g. "FilePatterns") to include in API
  1591  	// requests with the JSON null value. By default, fields with empty values are
  1592  	// omitted from API requests. See
  1593  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1594  	NullFields []string `json:"-"`
  1595  }
  1596  
  1597  func (s *GoogleCloudDatacatalogV1GcsFilesetSpec) MarshalJSON() ([]byte, error) {
  1598  	type NoMethod GoogleCloudDatacatalogV1GcsFilesetSpec
  1599  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1600  }
  1601  
  1602  // GoogleCloudDatacatalogV1ImportEntriesMetadata: Metadata message for
  1603  // long-running operation returned by the ImportEntries.
  1604  type GoogleCloudDatacatalogV1ImportEntriesMetadata struct {
  1605  	// Errors: Partial errors that are encountered during the ImportEntries
  1606  	// operation. There is no guarantee that all the encountered errors are
  1607  	// reported. However, if no errors are reported, it means that no errors were
  1608  	// encountered.
  1609  	Errors []*Status `json:"errors,omitempty"`
  1610  	// State: State of the import operation.
  1611  	//
  1612  	// Possible values:
  1613  	//   "IMPORT_STATE_UNSPECIFIED" - Default value. This value is unused.
  1614  	//   "IMPORT_QUEUED" - The dump with entries has been queued for import.
  1615  	//   "IMPORT_IN_PROGRESS" - The import of entries is in progress.
  1616  	//   "IMPORT_DONE" - The import of entries has been finished.
  1617  	//   "IMPORT_OBSOLETE" - The import of entries has been abandoned in favor of a
  1618  	// newer request.
  1619  	State string `json:"state,omitempty"`
  1620  	// ForceSendFields is a list of field names (e.g. "Errors") to unconditionally
  1621  	// include in API requests. By default, fields with empty or default values are
  1622  	// omitted from API requests. See
  1623  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1624  	// details.
  1625  	ForceSendFields []string `json:"-"`
  1626  	// NullFields is a list of field names (e.g. "Errors") to include in API
  1627  	// requests with the JSON null value. By default, fields with empty values are
  1628  	// omitted from API requests. See
  1629  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1630  	NullFields []string `json:"-"`
  1631  }
  1632  
  1633  func (s *GoogleCloudDatacatalogV1ImportEntriesMetadata) MarshalJSON() ([]byte, error) {
  1634  	type NoMethod GoogleCloudDatacatalogV1ImportEntriesMetadata
  1635  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1636  }
  1637  
  1638  // GoogleCloudDatacatalogV1ImportEntriesResponse: Response message for
  1639  // long-running operation returned by the ImportEntries.
  1640  type GoogleCloudDatacatalogV1ImportEntriesResponse struct {
  1641  	// DeletedEntriesCount: Number of entries deleted as a result of import
  1642  	// operation.
  1643  	DeletedEntriesCount int64 `json:"deletedEntriesCount,omitempty,string"`
  1644  	// UpsertedEntriesCount: Cumulative number of entries created and entries
  1645  	// updated as a result of import operation.
  1646  	UpsertedEntriesCount int64 `json:"upsertedEntriesCount,omitempty,string"`
  1647  	// ForceSendFields is a list of field names (e.g. "DeletedEntriesCount") to
  1648  	// unconditionally include in API requests. By default, fields with empty or
  1649  	// default values are omitted from API requests. See
  1650  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1651  	// details.
  1652  	ForceSendFields []string `json:"-"`
  1653  	// NullFields is a list of field names (e.g. "DeletedEntriesCount") to include
  1654  	// in API requests with the JSON null value. By default, fields with empty
  1655  	// values are omitted from API requests. See
  1656  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1657  	NullFields []string `json:"-"`
  1658  }
  1659  
  1660  func (s *GoogleCloudDatacatalogV1ImportEntriesResponse) MarshalJSON() ([]byte, error) {
  1661  	type NoMethod GoogleCloudDatacatalogV1ImportEntriesResponse
  1662  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1663  }
  1664  
  1665  // GoogleCloudDatacatalogV1LookerSystemSpec: Specification that applies to
  1666  // entries that are part `LOOKER` system (user_specified_type)
  1667  type GoogleCloudDatacatalogV1LookerSystemSpec struct {
  1668  	// ParentInstanceDisplayName: Name of the parent Looker Instance. Empty if it
  1669  	// does not exist.
  1670  	ParentInstanceDisplayName string `json:"parentInstanceDisplayName,omitempty"`
  1671  	// ParentInstanceId: ID of the parent Looker Instance. Empty if it does not
  1672  	// exist. Example value: `someinstance.looker.com`
  1673  	ParentInstanceId string `json:"parentInstanceId,omitempty"`
  1674  	// ParentModelDisplayName: Name of the parent Model. Empty if it does not
  1675  	// exist.
  1676  	ParentModelDisplayName string `json:"parentModelDisplayName,omitempty"`
  1677  	// ParentModelId: ID of the parent Model. Empty if it does not exist.
  1678  	ParentModelId string `json:"parentModelId,omitempty"`
  1679  	// ParentViewDisplayName: Name of the parent View. Empty if it does not exist.
  1680  	ParentViewDisplayName string `json:"parentViewDisplayName,omitempty"`
  1681  	// ParentViewId: ID of the parent View. Empty if it does not exist.
  1682  	ParentViewId string `json:"parentViewId,omitempty"`
  1683  	// ForceSendFields is a list of field names (e.g. "ParentInstanceDisplayName")
  1684  	// to unconditionally include in API requests. By default, fields with empty or
  1685  	// default values are omitted from API requests. See
  1686  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1687  	// details.
  1688  	ForceSendFields []string `json:"-"`
  1689  	// NullFields is a list of field names (e.g. "ParentInstanceDisplayName") to
  1690  	// include in API requests with the JSON null value. By default, fields with
  1691  	// empty values are omitted from API requests. See
  1692  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1693  	NullFields []string `json:"-"`
  1694  }
  1695  
  1696  func (s *GoogleCloudDatacatalogV1LookerSystemSpec) MarshalJSON() ([]byte, error) {
  1697  	type NoMethod GoogleCloudDatacatalogV1LookerSystemSpec
  1698  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1699  }
  1700  
  1701  // GoogleCloudDatacatalogV1ModelSpec: Specification that applies to a model.
  1702  // Valid only for entries with the `MODEL` type.
  1703  type GoogleCloudDatacatalogV1ModelSpec struct {
  1704  	// VertexModelSpec: Specification for vertex model resources.
  1705  	VertexModelSpec *GoogleCloudDatacatalogV1VertexModelSpec `json:"vertexModelSpec,omitempty"`
  1706  	// ForceSendFields is a list of field names (e.g. "VertexModelSpec") to
  1707  	// unconditionally include in API requests. By default, fields with empty or
  1708  	// default values are omitted from API requests. See
  1709  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1710  	// details.
  1711  	ForceSendFields []string `json:"-"`
  1712  	// NullFields is a list of field names (e.g. "VertexModelSpec") to include in
  1713  	// API requests with the JSON null value. By default, fields with empty values
  1714  	// are omitted from API requests. See
  1715  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1716  	NullFields []string `json:"-"`
  1717  }
  1718  
  1719  func (s *GoogleCloudDatacatalogV1ModelSpec) MarshalJSON() ([]byte, error) {
  1720  	type NoMethod GoogleCloudDatacatalogV1ModelSpec
  1721  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1722  }
  1723  
  1724  // GoogleCloudDatacatalogV1PersonalDetails: Entry metadata relevant only to the
  1725  // user and private to them.
  1726  type GoogleCloudDatacatalogV1PersonalDetails struct {
  1727  	// StarTime: Set if the entry is starred; unset otherwise.
  1728  	StarTime string `json:"starTime,omitempty"`
  1729  	// Starred: True if the entry is starred by the user; false otherwise.
  1730  	Starred bool `json:"starred,omitempty"`
  1731  	// ForceSendFields is a list of field names (e.g. "StarTime") to
  1732  	// unconditionally include in API requests. By default, fields with empty or
  1733  	// default values are omitted from API requests. See
  1734  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1735  	// details.
  1736  	ForceSendFields []string `json:"-"`
  1737  	// NullFields is a list of field names (e.g. "StarTime") to include in API
  1738  	// requests with the JSON null value. By default, fields with empty values are
  1739  	// omitted from API requests. See
  1740  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1741  	NullFields []string `json:"-"`
  1742  }
  1743  
  1744  func (s *GoogleCloudDatacatalogV1PersonalDetails) MarshalJSON() ([]byte, error) {
  1745  	type NoMethod GoogleCloudDatacatalogV1PersonalDetails
  1746  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1747  }
  1748  
  1749  // GoogleCloudDatacatalogV1PhysicalSchema: Native schema used by a resource
  1750  // represented as an entry. Used by query engines for deserializing and parsing
  1751  // source data.
  1752  type GoogleCloudDatacatalogV1PhysicalSchema struct {
  1753  	// Avro: Schema in Avro JSON format.
  1754  	Avro *GoogleCloudDatacatalogV1PhysicalSchemaAvroSchema `json:"avro,omitempty"`
  1755  	// Csv: Marks a CSV-encoded data source.
  1756  	Csv *GoogleCloudDatacatalogV1PhysicalSchemaCsvSchema `json:"csv,omitempty"`
  1757  	// Orc: Marks an ORC-encoded data source.
  1758  	Orc *GoogleCloudDatacatalogV1PhysicalSchemaOrcSchema `json:"orc,omitempty"`
  1759  	// Parquet: Marks a Parquet-encoded data source.
  1760  	Parquet *GoogleCloudDatacatalogV1PhysicalSchemaParquetSchema `json:"parquet,omitempty"`
  1761  	// Protobuf: Schema in protocol buffer format.
  1762  	Protobuf *GoogleCloudDatacatalogV1PhysicalSchemaProtobufSchema `json:"protobuf,omitempty"`
  1763  	// Thrift: Schema in Thrift format.
  1764  	Thrift *GoogleCloudDatacatalogV1PhysicalSchemaThriftSchema `json:"thrift,omitempty"`
  1765  	// ForceSendFields is a list of field names (e.g. "Avro") to unconditionally
  1766  	// include in API requests. By default, fields with empty or default values are
  1767  	// omitted from API requests. See
  1768  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1769  	// details.
  1770  	ForceSendFields []string `json:"-"`
  1771  	// NullFields is a list of field names (e.g. "Avro") to include in API requests
  1772  	// with the JSON null value. By default, fields with empty values are omitted
  1773  	// from API requests. See
  1774  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1775  	NullFields []string `json:"-"`
  1776  }
  1777  
  1778  func (s *GoogleCloudDatacatalogV1PhysicalSchema) MarshalJSON() ([]byte, error) {
  1779  	type NoMethod GoogleCloudDatacatalogV1PhysicalSchema
  1780  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1781  }
  1782  
  1783  // GoogleCloudDatacatalogV1PhysicalSchemaAvroSchema: Schema in Avro JSON
  1784  // format.
  1785  type GoogleCloudDatacatalogV1PhysicalSchemaAvroSchema struct {
  1786  	// Text: JSON source of the Avro schema.
  1787  	Text string `json:"text,omitempty"`
  1788  	// ForceSendFields is a list of field names (e.g. "Text") to unconditionally
  1789  	// include in API requests. By default, fields with empty or default values are
  1790  	// omitted from API requests. See
  1791  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1792  	// details.
  1793  	ForceSendFields []string `json:"-"`
  1794  	// NullFields is a list of field names (e.g. "Text") to include in API requests
  1795  	// with the JSON null value. By default, fields with empty values are omitted
  1796  	// from API requests. See
  1797  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1798  	NullFields []string `json:"-"`
  1799  }
  1800  
  1801  func (s *GoogleCloudDatacatalogV1PhysicalSchemaAvroSchema) MarshalJSON() ([]byte, error) {
  1802  	type NoMethod GoogleCloudDatacatalogV1PhysicalSchemaAvroSchema
  1803  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1804  }
  1805  
  1806  // GoogleCloudDatacatalogV1PhysicalSchemaCsvSchema: Marks a CSV-encoded data
  1807  // source.
  1808  type GoogleCloudDatacatalogV1PhysicalSchemaCsvSchema struct {
  1809  }
  1810  
  1811  // GoogleCloudDatacatalogV1PhysicalSchemaOrcSchema: Marks an ORC-encoded data
  1812  // source.
  1813  type GoogleCloudDatacatalogV1PhysicalSchemaOrcSchema struct {
  1814  }
  1815  
  1816  // GoogleCloudDatacatalogV1PhysicalSchemaParquetSchema: Marks a Parquet-encoded
  1817  // data source.
  1818  type GoogleCloudDatacatalogV1PhysicalSchemaParquetSchema struct {
  1819  }
  1820  
  1821  // GoogleCloudDatacatalogV1PhysicalSchemaProtobufSchema: Schema in protocol
  1822  // buffer format.
  1823  type GoogleCloudDatacatalogV1PhysicalSchemaProtobufSchema struct {
  1824  	// Text: Protocol buffer source of the schema.
  1825  	Text string `json:"text,omitempty"`
  1826  	// ForceSendFields is a list of field names (e.g. "Text") to unconditionally
  1827  	// include in API requests. By default, fields with empty or default values are
  1828  	// omitted from API requests. See
  1829  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1830  	// details.
  1831  	ForceSendFields []string `json:"-"`
  1832  	// NullFields is a list of field names (e.g. "Text") to include in API requests
  1833  	// with the JSON null value. By default, fields with empty values are omitted
  1834  	// from API requests. See
  1835  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1836  	NullFields []string `json:"-"`
  1837  }
  1838  
  1839  func (s *GoogleCloudDatacatalogV1PhysicalSchemaProtobufSchema) MarshalJSON() ([]byte, error) {
  1840  	type NoMethod GoogleCloudDatacatalogV1PhysicalSchemaProtobufSchema
  1841  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1842  }
  1843  
  1844  // GoogleCloudDatacatalogV1PhysicalSchemaThriftSchema: Schema in Thrift format.
  1845  type GoogleCloudDatacatalogV1PhysicalSchemaThriftSchema struct {
  1846  	// Text: Thrift IDL source of the schema.
  1847  	Text string `json:"text,omitempty"`
  1848  	// ForceSendFields is a list of field names (e.g. "Text") to unconditionally
  1849  	// include in API requests. By default, fields with empty or default values are
  1850  	// omitted from API requests. See
  1851  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1852  	// details.
  1853  	ForceSendFields []string `json:"-"`
  1854  	// NullFields is a list of field names (e.g. "Text") to include in API requests
  1855  	// with the JSON null value. By default, fields with empty values are omitted
  1856  	// from API requests. See
  1857  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1858  	NullFields []string `json:"-"`
  1859  }
  1860  
  1861  func (s *GoogleCloudDatacatalogV1PhysicalSchemaThriftSchema) MarshalJSON() ([]byte, error) {
  1862  	type NoMethod GoogleCloudDatacatalogV1PhysicalSchemaThriftSchema
  1863  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1864  }
  1865  
  1866  // GoogleCloudDatacatalogV1ReconcileTagsMetadata: Long-running operation
  1867  // metadata message returned by the ReconcileTags.
  1868  type GoogleCloudDatacatalogV1ReconcileTagsMetadata struct {
  1869  	// Errors: Maps the name of each tagged column (or empty string for a sole
  1870  	// entry) to tagging operation status.
  1871  	Errors map[string]Status `json:"errors,omitempty"`
  1872  	// State: State of the reconciliation operation.
  1873  	//
  1874  	// Possible values:
  1875  	//   "RECONCILIATION_STATE_UNSPECIFIED" - Default value. This value is unused.
  1876  	//   "RECONCILIATION_QUEUED" - The reconciliation has been queued and awaits
  1877  	// for execution.
  1878  	//   "RECONCILIATION_IN_PROGRESS" - The reconciliation is in progress.
  1879  	//   "RECONCILIATION_DONE" - The reconciliation has been finished.
  1880  	State string `json:"state,omitempty"`
  1881  	// ForceSendFields is a list of field names (e.g. "Errors") to unconditionally
  1882  	// include in API requests. By default, fields with empty or default values are
  1883  	// omitted from API requests. See
  1884  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1885  	// details.
  1886  	ForceSendFields []string `json:"-"`
  1887  	// NullFields is a list of field names (e.g. "Errors") to include in API
  1888  	// requests with the JSON null value. By default, fields with empty values are
  1889  	// omitted from API requests. See
  1890  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1891  	NullFields []string `json:"-"`
  1892  }
  1893  
  1894  func (s *GoogleCloudDatacatalogV1ReconcileTagsMetadata) MarshalJSON() ([]byte, error) {
  1895  	type NoMethod GoogleCloudDatacatalogV1ReconcileTagsMetadata
  1896  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1897  }
  1898  
  1899  // GoogleCloudDatacatalogV1ReconcileTagsResponse: Long-running operation
  1900  // response message returned by ReconcileTags.
  1901  type GoogleCloudDatacatalogV1ReconcileTagsResponse struct {
  1902  	// CreatedTagsCount: Number of tags created in the request.
  1903  	CreatedTagsCount int64 `json:"createdTagsCount,omitempty,string"`
  1904  	// DeletedTagsCount: Number of tags deleted in the request.
  1905  	DeletedTagsCount int64 `json:"deletedTagsCount,omitempty,string"`
  1906  	// UpdatedTagsCount: Number of tags updated in the request.
  1907  	UpdatedTagsCount int64 `json:"updatedTagsCount,omitempty,string"`
  1908  	// ForceSendFields is a list of field names (e.g. "CreatedTagsCount") to
  1909  	// unconditionally include in API requests. By default, fields with empty or
  1910  	// default values are omitted from API requests. See
  1911  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1912  	// details.
  1913  	ForceSendFields []string `json:"-"`
  1914  	// NullFields is a list of field names (e.g. "CreatedTagsCount") to include in
  1915  	// API requests with the JSON null value. By default, fields with empty values
  1916  	// are omitted from API requests. See
  1917  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1918  	NullFields []string `json:"-"`
  1919  }
  1920  
  1921  func (s *GoogleCloudDatacatalogV1ReconcileTagsResponse) MarshalJSON() ([]byte, error) {
  1922  	type NoMethod GoogleCloudDatacatalogV1ReconcileTagsResponse
  1923  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1924  }
  1925  
  1926  // GoogleCloudDatacatalogV1RoutineSpec: Specification that applies to a
  1927  // routine. Valid only for entries with the `ROUTINE` type.
  1928  type GoogleCloudDatacatalogV1RoutineSpec struct {
  1929  	// BigqueryRoutineSpec: Fields specific for BigQuery routines.
  1930  	BigqueryRoutineSpec *GoogleCloudDatacatalogV1BigQueryRoutineSpec `json:"bigqueryRoutineSpec,omitempty"`
  1931  	// DefinitionBody: The body of the routine.
  1932  	DefinitionBody string `json:"definitionBody,omitempty"`
  1933  	// Language: The language the routine is written in. The exact value depends on
  1934  	// the source system. For BigQuery routines, possible values are: * `SQL` *
  1935  	// `JAVASCRIPT`
  1936  	Language string `json:"language,omitempty"`
  1937  	// ReturnType: Return type of the argument. The exact value depends on the
  1938  	// source system and the language.
  1939  	ReturnType string `json:"returnType,omitempty"`
  1940  	// RoutineArguments: Arguments of the routine.
  1941  	RoutineArguments []*GoogleCloudDatacatalogV1RoutineSpecArgument `json:"routineArguments,omitempty"`
  1942  	// RoutineType: The type of the routine.
  1943  	//
  1944  	// Possible values:
  1945  	//   "ROUTINE_TYPE_UNSPECIFIED" - Unspecified type.
  1946  	//   "SCALAR_FUNCTION" - Non-builtin permanent scalar function.
  1947  	//   "PROCEDURE" - Stored procedure.
  1948  	RoutineType string `json:"routineType,omitempty"`
  1949  	// ForceSendFields is a list of field names (e.g. "BigqueryRoutineSpec") to
  1950  	// unconditionally include in API requests. By default, fields with empty or
  1951  	// default values are omitted from API requests. See
  1952  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1953  	// details.
  1954  	ForceSendFields []string `json:"-"`
  1955  	// NullFields is a list of field names (e.g. "BigqueryRoutineSpec") to include
  1956  	// in API requests with the JSON null value. By default, fields with empty
  1957  	// values are omitted from API requests. See
  1958  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1959  	NullFields []string `json:"-"`
  1960  }
  1961  
  1962  func (s *GoogleCloudDatacatalogV1RoutineSpec) MarshalJSON() ([]byte, error) {
  1963  	type NoMethod GoogleCloudDatacatalogV1RoutineSpec
  1964  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1965  }
  1966  
  1967  // GoogleCloudDatacatalogV1RoutineSpecArgument: Input or output argument of a
  1968  // function or stored procedure.
  1969  type GoogleCloudDatacatalogV1RoutineSpecArgument struct {
  1970  	// Mode: Specifies whether the argument is input or output.
  1971  	//
  1972  	// Possible values:
  1973  	//   "MODE_UNSPECIFIED" - Unspecified mode.
  1974  	//   "IN" - The argument is input-only.
  1975  	//   "OUT" - The argument is output-only.
  1976  	//   "INOUT" - The argument is both an input and an output.
  1977  	Mode string `json:"mode,omitempty"`
  1978  	// Name: The name of the argument. A return argument of a function might not
  1979  	// have a name.
  1980  	Name string `json:"name,omitempty"`
  1981  	// Type: Type of the argument. The exact value depends on the source system and
  1982  	// the language.
  1983  	Type string `json:"type,omitempty"`
  1984  	// ForceSendFields is a list of field names (e.g. "Mode") to unconditionally
  1985  	// include in API requests. By default, fields with empty or default values are
  1986  	// omitted from API requests. See
  1987  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1988  	// details.
  1989  	ForceSendFields []string `json:"-"`
  1990  	// NullFields is a list of field names (e.g. "Mode") to include in API requests
  1991  	// with the JSON null value. By default, fields with empty values are omitted
  1992  	// from API requests. See
  1993  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1994  	NullFields []string `json:"-"`
  1995  }
  1996  
  1997  func (s *GoogleCloudDatacatalogV1RoutineSpecArgument) MarshalJSON() ([]byte, error) {
  1998  	type NoMethod GoogleCloudDatacatalogV1RoutineSpecArgument
  1999  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2000  }
  2001  
  2002  // GoogleCloudDatacatalogV1Schema: Represents a schema, for example, a
  2003  // BigQuery, GoogleSQL, or Avro schema.
  2004  type GoogleCloudDatacatalogV1Schema struct {
  2005  	// Columns: The unified GoogleSQL-like schema of columns. The overall maximum
  2006  	// number of columns and nested columns is 10,000. The maximum nested depth is
  2007  	// 15 levels.
  2008  	Columns []*GoogleCloudDatacatalogV1ColumnSchema `json:"columns,omitempty"`
  2009  	// ForceSendFields is a list of field names (e.g. "Columns") to unconditionally
  2010  	// include in API requests. By default, fields with empty or default values are
  2011  	// omitted from API requests. See
  2012  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2013  	// details.
  2014  	ForceSendFields []string `json:"-"`
  2015  	// NullFields is a list of field names (e.g. "Columns") to include in API
  2016  	// requests with the JSON null value. By default, fields with empty values are
  2017  	// omitted from API requests. See
  2018  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2019  	NullFields []string `json:"-"`
  2020  }
  2021  
  2022  func (s *GoogleCloudDatacatalogV1Schema) MarshalJSON() ([]byte, error) {
  2023  	type NoMethod GoogleCloudDatacatalogV1Schema
  2024  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2025  }
  2026  
  2027  // GoogleCloudDatacatalogV1ServiceSpec: Specification that applies to a Service
  2028  // resource. Valid only for entries with the `SERVICE` type.
  2029  type GoogleCloudDatacatalogV1ServiceSpec struct {
  2030  	// CloudBigtableInstanceSpec: Specification that applies to Instance entries of
  2031  	// `CLOUD_BIGTABLE` system.
  2032  	CloudBigtableInstanceSpec *GoogleCloudDatacatalogV1CloudBigtableInstanceSpec `json:"cloudBigtableInstanceSpec,omitempty"`
  2033  	// ForceSendFields is a list of field names (e.g. "CloudBigtableInstanceSpec")
  2034  	// to unconditionally include in API requests. By default, fields with empty or
  2035  	// default values are omitted from API requests. See
  2036  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2037  	// details.
  2038  	ForceSendFields []string `json:"-"`
  2039  	// NullFields is a list of field names (e.g. "CloudBigtableInstanceSpec") to
  2040  	// include in API requests with the JSON null value. By default, fields with
  2041  	// empty values are omitted from API requests. See
  2042  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2043  	NullFields []string `json:"-"`
  2044  }
  2045  
  2046  func (s *GoogleCloudDatacatalogV1ServiceSpec) MarshalJSON() ([]byte, error) {
  2047  	type NoMethod GoogleCloudDatacatalogV1ServiceSpec
  2048  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2049  }
  2050  
  2051  // GoogleCloudDatacatalogV1SqlDatabaseSystemSpec: Specification that applies to
  2052  // entries that are part `SQL_DATABASE` system (user_specified_type)
  2053  type GoogleCloudDatacatalogV1SqlDatabaseSystemSpec struct {
  2054  	// DatabaseVersion: Version of the database engine.
  2055  	DatabaseVersion string `json:"databaseVersion,omitempty"`
  2056  	// InstanceHost: Host of the SQL database enum InstanceHost { UNDEFINED = 0;
  2057  	// SELF_HOSTED = 1; CLOUD_SQL = 2; AMAZON_RDS = 3; AZURE_SQL = 4; } Host of the
  2058  	// enclousing database instance.
  2059  	InstanceHost string `json:"instanceHost,omitempty"`
  2060  	// SqlEngine: SQL Database Engine. enum SqlEngine { UNDEFINED = 0; MY_SQL = 1;
  2061  	// POSTGRE_SQL = 2; SQL_SERVER = 3; } Engine of the enclosing database
  2062  	// instance.
  2063  	SqlEngine string `json:"sqlEngine,omitempty"`
  2064  	// ForceSendFields is a list of field names (e.g. "DatabaseVersion") to
  2065  	// unconditionally include in API requests. By default, fields with empty or
  2066  	// default values are omitted from API requests. See
  2067  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2068  	// details.
  2069  	ForceSendFields []string `json:"-"`
  2070  	// NullFields is a list of field names (e.g. "DatabaseVersion") to include in
  2071  	// API requests with the JSON null value. By default, fields with empty values
  2072  	// are omitted from API requests. See
  2073  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2074  	NullFields []string `json:"-"`
  2075  }
  2076  
  2077  func (s *GoogleCloudDatacatalogV1SqlDatabaseSystemSpec) MarshalJSON() ([]byte, error) {
  2078  	type NoMethod GoogleCloudDatacatalogV1SqlDatabaseSystemSpec
  2079  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2080  }
  2081  
  2082  // GoogleCloudDatacatalogV1StorageProperties: Details the properties of the
  2083  // underlying storage.
  2084  type GoogleCloudDatacatalogV1StorageProperties struct {
  2085  	// FilePattern: Patterns to identify a set of files for this fileset. Examples
  2086  	// of a valid `file_pattern`: * `gs://bucket_name/dir/*`: matches all files in
  2087  	// the `bucket_name/dir` directory * `gs://bucket_name/dir/**`: matches all
  2088  	// files in the `bucket_name/dir` and all subdirectories recursively *
  2089  	// `gs://bucket_name/file*`: matches files prefixed by `file` in `bucket_name`
  2090  	// * `gs://bucket_name/??.txt`: matches files with two characters followed by
  2091  	// `.txt` in `bucket_name` * `gs://bucket_name/[aeiou].txt`: matches files that
  2092  	// contain a single vowel character followed by `.txt` in `bucket_name` *
  2093  	// `gs://bucket_name/[a-m].txt`: matches files that contain `a`, `b`, ... or
  2094  	// `m` followed by `.txt` in `bucket_name` * `gs://bucket_name/a/*/b`: matches
  2095  	// all files in `bucket_name` that match the `a/*/b` pattern, such as `a/c/b`,
  2096  	// `a/d/b` * `gs://another_bucket/a.txt`: matches `gs://another_bucket/a.txt`
  2097  	FilePattern []string `json:"filePattern,omitempty"`
  2098  	// FileType: File type in MIME format, for example, `text/plain`.
  2099  	FileType string `json:"fileType,omitempty"`
  2100  	// ForceSendFields is a list of field names (e.g. "FilePattern") to
  2101  	// unconditionally include in API requests. By default, fields with empty or
  2102  	// default values are omitted from API requests. See
  2103  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2104  	// details.
  2105  	ForceSendFields []string `json:"-"`
  2106  	// NullFields is a list of field names (e.g. "FilePattern") to include in API
  2107  	// requests with the JSON null value. By default, fields with empty values are
  2108  	// omitted from API requests. See
  2109  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2110  	NullFields []string `json:"-"`
  2111  }
  2112  
  2113  func (s *GoogleCloudDatacatalogV1StorageProperties) MarshalJSON() ([]byte, error) {
  2114  	type NoMethod GoogleCloudDatacatalogV1StorageProperties
  2115  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2116  }
  2117  
  2118  // GoogleCloudDatacatalogV1SystemTimestamps: Timestamps associated with this
  2119  // resource in a particular system.
  2120  type GoogleCloudDatacatalogV1SystemTimestamps struct {
  2121  	// CreateTime: Creation timestamp of the resource within the given system.
  2122  	CreateTime string `json:"createTime,omitempty"`
  2123  	// ExpireTime: Output only. Expiration timestamp of the resource within the
  2124  	// given system. Currently only applicable to BigQuery resources.
  2125  	ExpireTime string `json:"expireTime,omitempty"`
  2126  	// UpdateTime: Timestamp of the last modification of the resource or its
  2127  	// metadata within a given system. Note: Depending on the source system, not
  2128  	// every modification updates this timestamp. For example, BigQuery timestamps
  2129  	// every metadata modification but not data or permission changes.
  2130  	UpdateTime string `json:"updateTime,omitempty"`
  2131  	// ForceSendFields is a list of field names (e.g. "CreateTime") to
  2132  	// unconditionally include in API requests. By default, fields with empty or
  2133  	// default values are omitted from API requests. See
  2134  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2135  	// details.
  2136  	ForceSendFields []string `json:"-"`
  2137  	// NullFields is a list of field names (e.g. "CreateTime") to include in API
  2138  	// requests with the JSON null value. By default, fields with empty values are
  2139  	// omitted from API requests. See
  2140  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2141  	NullFields []string `json:"-"`
  2142  }
  2143  
  2144  func (s *GoogleCloudDatacatalogV1SystemTimestamps) MarshalJSON() ([]byte, error) {
  2145  	type NoMethod GoogleCloudDatacatalogV1SystemTimestamps
  2146  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2147  }
  2148  
  2149  // GoogleCloudDatacatalogV1TableSpec: Normal BigQuery table specification.
  2150  type GoogleCloudDatacatalogV1TableSpec struct {
  2151  	// GroupedEntry: Output only. If the table is date-sharded, that is, it matches
  2152  	// the `[prefix]YYYYMMDD` name pattern, this field is the Data Catalog resource
  2153  	// name of the date-sharded grouped entry. For example:
  2154  	// `projects/{PROJECT_ID}/locations/{LOCATION}/entrygroups/{ENTRY_GROUP_ID}/entr
  2155  	// ies/{ENTRY_ID}`. Otherwise, `grouped_entry` is empty.
  2156  	GroupedEntry string `json:"groupedEntry,omitempty"`
  2157  	// ForceSendFields is a list of field names (e.g. "GroupedEntry") to
  2158  	// unconditionally include in API requests. By default, fields with empty or
  2159  	// default values are omitted from API requests. See
  2160  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2161  	// details.
  2162  	ForceSendFields []string `json:"-"`
  2163  	// NullFields is a list of field names (e.g. "GroupedEntry") to include in API
  2164  	// requests with the JSON null value. By default, fields with empty values are
  2165  	// omitted from API requests. See
  2166  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2167  	NullFields []string `json:"-"`
  2168  }
  2169  
  2170  func (s *GoogleCloudDatacatalogV1TableSpec) MarshalJSON() ([]byte, error) {
  2171  	type NoMethod GoogleCloudDatacatalogV1TableSpec
  2172  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2173  }
  2174  
  2175  // GoogleCloudDatacatalogV1Tag: Tags contain custom metadata and are attached
  2176  // to Data Catalog resources. Tags conform with the specification of their tag
  2177  // template. See Data Catalog IAM
  2178  // (https://cloud.google.com/data-catalog/docs/concepts/iam) for information on
  2179  // the permissions needed to create or view tags.
  2180  type GoogleCloudDatacatalogV1Tag struct {
  2181  	// Column: Resources like entry can have schemas associated with them. This
  2182  	// scope allows you to attach tags to an individual column based on that
  2183  	// schema. To attach a tag to a nested column, separate column names with a dot
  2184  	// (`.`). Example: `column.nested_column`.
  2185  	Column string `json:"column,omitempty"`
  2186  	// Fields: Required. Maps the ID of a tag field to its value and additional
  2187  	// information about that field. Tag template defines valid field IDs. A tag
  2188  	// must have at least 1 field and at most 500 fields.
  2189  	Fields map[string]GoogleCloudDatacatalogV1TagField `json:"fields,omitempty"`
  2190  	// Name: Identifier. The resource name of the tag in URL format where tag ID is
  2191  	// a system-generated identifier. Note: The tag itself might not be stored in
  2192  	// the location specified in its name.
  2193  	Name string `json:"name,omitempty"`
  2194  	// Template: Required. The resource name of the tag template this tag uses.
  2195  	// Example:
  2196  	// `projects/{PROJECT_ID}/locations/{LOCATION}/tagTemplates/{TAG_TEMPLATE_ID}`
  2197  	// This field cannot be modified after creation.
  2198  	Template string `json:"template,omitempty"`
  2199  	// TemplateDisplayName: Output only. The display name of the tag template.
  2200  	TemplateDisplayName string `json:"templateDisplayName,omitempty"`
  2201  	// ForceSendFields is a list of field names (e.g. "Column") to unconditionally
  2202  	// include in API requests. By default, fields with empty or default values are
  2203  	// omitted from API requests. See
  2204  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2205  	// details.
  2206  	ForceSendFields []string `json:"-"`
  2207  	// NullFields is a list of field names (e.g. "Column") to include in API
  2208  	// requests with the JSON null value. By default, fields with empty values are
  2209  	// omitted from API requests. See
  2210  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2211  	NullFields []string `json:"-"`
  2212  }
  2213  
  2214  func (s *GoogleCloudDatacatalogV1Tag) MarshalJSON() ([]byte, error) {
  2215  	type NoMethod GoogleCloudDatacatalogV1Tag
  2216  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2217  }
  2218  
  2219  // GoogleCloudDatacatalogV1TagField: Contains the value and additional
  2220  // information on a field within a Tag.
  2221  type GoogleCloudDatacatalogV1TagField struct {
  2222  	// BoolValue: The value of a tag field with a boolean type.
  2223  	BoolValue bool `json:"boolValue,omitempty"`
  2224  	// DisplayName: Output only. The display name of this field.
  2225  	DisplayName string `json:"displayName,omitempty"`
  2226  	// DoubleValue: The value of a tag field with a double type.
  2227  	DoubleValue float64 `json:"doubleValue,omitempty"`
  2228  	// EnumValue: The value of a tag field with an enum type. This value must be
  2229  	// one of the allowed values listed in this enum.
  2230  	EnumValue *GoogleCloudDatacatalogV1TagFieldEnumValue `json:"enumValue,omitempty"`
  2231  	// Order: Output only. The order of this field with respect to other fields in
  2232  	// this tag. Can be set by Tag. For example, a higher value can indicate a more
  2233  	// important field. The value can be negative. Multiple fields can have the
  2234  	// same order, and field orders within a tag don't have to be sequential.
  2235  	Order int64 `json:"order,omitempty"`
  2236  	// RichtextValue: The value of a tag field with a rich text type. The maximum
  2237  	// length is 10 MiB as this value holds HTML descriptions including encoded
  2238  	// images. The maximum length of the text without images is 100 KiB.
  2239  	RichtextValue string `json:"richtextValue,omitempty"`
  2240  	// StringValue: The value of a tag field with a string type. The maximum length
  2241  	// is 2000 UTF-8 characters.
  2242  	StringValue string `json:"stringValue,omitempty"`
  2243  	// TimestampValue: The value of a tag field with a timestamp type.
  2244  	TimestampValue string `json:"timestampValue,omitempty"`
  2245  	// ForceSendFields is a list of field names (e.g. "BoolValue") to
  2246  	// unconditionally include in API requests. By default, fields with empty or
  2247  	// default values are omitted from API requests. See
  2248  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2249  	// details.
  2250  	ForceSendFields []string `json:"-"`
  2251  	// NullFields is a list of field names (e.g. "BoolValue") to include in API
  2252  	// requests with the JSON null value. By default, fields with empty values are
  2253  	// omitted from API requests. See
  2254  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2255  	NullFields []string `json:"-"`
  2256  }
  2257  
  2258  func (s *GoogleCloudDatacatalogV1TagField) MarshalJSON() ([]byte, error) {
  2259  	type NoMethod GoogleCloudDatacatalogV1TagField
  2260  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2261  }
  2262  
  2263  func (s *GoogleCloudDatacatalogV1TagField) UnmarshalJSON(data []byte) error {
  2264  	type NoMethod GoogleCloudDatacatalogV1TagField
  2265  	var s1 struct {
  2266  		DoubleValue gensupport.JSONFloat64 `json:"doubleValue"`
  2267  		*NoMethod
  2268  	}
  2269  	s1.NoMethod = (*NoMethod)(s)
  2270  	if err := json.Unmarshal(data, &s1); err != nil {
  2271  		return err
  2272  	}
  2273  	s.DoubleValue = float64(s1.DoubleValue)
  2274  	return nil
  2275  }
  2276  
  2277  // GoogleCloudDatacatalogV1TagFieldEnumValue: An enum value.
  2278  type GoogleCloudDatacatalogV1TagFieldEnumValue struct {
  2279  	// DisplayName: The display name of the enum value.
  2280  	DisplayName string `json:"displayName,omitempty"`
  2281  	// ForceSendFields is a list of field names (e.g. "DisplayName") 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. "DisplayName") 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 *GoogleCloudDatacatalogV1TagFieldEnumValue) MarshalJSON() ([]byte, error) {
  2295  	type NoMethod GoogleCloudDatacatalogV1TagFieldEnumValue
  2296  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2297  }
  2298  
  2299  // GoogleCloudDatacatalogV1TaggedEntry: Wrapper containing Entry and
  2300  // information about Tags that should and should not be attached to it.
  2301  type GoogleCloudDatacatalogV1TaggedEntry struct {
  2302  	// AbsentTags: Optional. Tags that should be deleted from the Data Catalog.
  2303  	// Caller should populate template name and column only.
  2304  	AbsentTags []*GoogleCloudDatacatalogV1Tag `json:"absentTags,omitempty"`
  2305  	// PresentTags: Optional. Tags that should be ingested into the Data Catalog.
  2306  	// Caller should populate template name, column and fields.
  2307  	PresentTags []*GoogleCloudDatacatalogV1Tag `json:"presentTags,omitempty"`
  2308  	// V1Entry: Non-encrypted Data Catalog v1 Entry.
  2309  	V1Entry *GoogleCloudDatacatalogV1Entry `json:"v1Entry,omitempty"`
  2310  	// ForceSendFields is a list of field names (e.g. "AbsentTags") to
  2311  	// unconditionally include in API requests. By default, fields with empty or
  2312  	// default values are omitted from API requests. See
  2313  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2314  	// details.
  2315  	ForceSendFields []string `json:"-"`
  2316  	// NullFields is a list of field names (e.g. "AbsentTags") to include in API
  2317  	// requests with the JSON null value. By default, fields with empty values are
  2318  	// omitted from API requests. See
  2319  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2320  	NullFields []string `json:"-"`
  2321  }
  2322  
  2323  func (s *GoogleCloudDatacatalogV1TaggedEntry) MarshalJSON() ([]byte, error) {
  2324  	type NoMethod GoogleCloudDatacatalogV1TaggedEntry
  2325  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2326  }
  2327  
  2328  // GoogleCloudDatacatalogV1UsageSignal: The set of all usage signals that Data
  2329  // Catalog stores. Note: Usually, these signals are updated daily. In rare
  2330  // cases, an update may fail but will be performed again on the next day.
  2331  type GoogleCloudDatacatalogV1UsageSignal struct {
  2332  	// CommonUsageWithinTimeRange: Common usage statistics over each of the
  2333  	// predefined time ranges. Supported time ranges are `{"24H", "7D", "30D",
  2334  	// "Lifetime"}`.
  2335  	CommonUsageWithinTimeRange map[string]GoogleCloudDatacatalogV1CommonUsageStats `json:"commonUsageWithinTimeRange,omitempty"`
  2336  	// FavoriteCount: Favorite count in the source system.
  2337  	FavoriteCount int64 `json:"favoriteCount,omitempty,string"`
  2338  	// UpdateTime: The end timestamp of the duration of usage statistics.
  2339  	UpdateTime string `json:"updateTime,omitempty"`
  2340  	// UsageWithinTimeRange: Output only. BigQuery usage statistics over each of
  2341  	// the predefined time ranges. Supported time ranges are `{"24H", "7D",
  2342  	// "30D"}`.
  2343  	UsageWithinTimeRange map[string]GoogleCloudDatacatalogV1UsageStats `json:"usageWithinTimeRange,omitempty"`
  2344  	// ForceSendFields is a list of field names (e.g. "CommonUsageWithinTimeRange")
  2345  	// to unconditionally include in API requests. By default, fields with empty or
  2346  	// default values are omitted from API requests. See
  2347  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2348  	// details.
  2349  	ForceSendFields []string `json:"-"`
  2350  	// NullFields is a list of field names (e.g. "CommonUsageWithinTimeRange") to
  2351  	// include in API requests with the JSON null value. By default, fields with
  2352  	// empty values are omitted from API requests. See
  2353  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2354  	NullFields []string `json:"-"`
  2355  }
  2356  
  2357  func (s *GoogleCloudDatacatalogV1UsageSignal) MarshalJSON() ([]byte, error) {
  2358  	type NoMethod GoogleCloudDatacatalogV1UsageSignal
  2359  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2360  }
  2361  
  2362  // GoogleCloudDatacatalogV1UsageStats: Detailed statistics on the entry's
  2363  // usage. Usage statistics have the following limitations: - Only BigQuery
  2364  // tables have them. - They only include BigQuery query jobs. - They might be
  2365  // underestimated because wildcard table references are not yet counted. For
  2366  // more information, see [Querying multiple tables using a wildcard table]
  2367  // (https://cloud.google.com/bigquery/docs/querying-wildcard-tables)
  2368  type GoogleCloudDatacatalogV1UsageStats struct {
  2369  	// TotalCancellations: The number of cancelled attempts to use the underlying
  2370  	// entry.
  2371  	TotalCancellations float64 `json:"totalCancellations,omitempty"`
  2372  	// TotalCompletions: The number of successful uses of the underlying entry.
  2373  	TotalCompletions float64 `json:"totalCompletions,omitempty"`
  2374  	// TotalExecutionTimeForCompletionsMillis: Total time spent only on successful
  2375  	// uses, in milliseconds.
  2376  	TotalExecutionTimeForCompletionsMillis float64 `json:"totalExecutionTimeForCompletionsMillis,omitempty"`
  2377  	// TotalFailures: The number of failed attempts to use the underlying entry.
  2378  	TotalFailures float64 `json:"totalFailures,omitempty"`
  2379  	// ForceSendFields is a list of field names (e.g. "TotalCancellations") to
  2380  	// unconditionally include in API requests. By default, fields with empty or
  2381  	// default values are omitted from API requests. See
  2382  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2383  	// details.
  2384  	ForceSendFields []string `json:"-"`
  2385  	// NullFields is a list of field names (e.g. "TotalCancellations") to include
  2386  	// in API requests with the JSON null value. By default, fields with empty
  2387  	// values are omitted from API requests. See
  2388  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2389  	NullFields []string `json:"-"`
  2390  }
  2391  
  2392  func (s *GoogleCloudDatacatalogV1UsageStats) MarshalJSON() ([]byte, error) {
  2393  	type NoMethod GoogleCloudDatacatalogV1UsageStats
  2394  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2395  }
  2396  
  2397  func (s *GoogleCloudDatacatalogV1UsageStats) UnmarshalJSON(data []byte) error {
  2398  	type NoMethod GoogleCloudDatacatalogV1UsageStats
  2399  	var s1 struct {
  2400  		TotalCancellations                     gensupport.JSONFloat64 `json:"totalCancellations"`
  2401  		TotalCompletions                       gensupport.JSONFloat64 `json:"totalCompletions"`
  2402  		TotalExecutionTimeForCompletionsMillis gensupport.JSONFloat64 `json:"totalExecutionTimeForCompletionsMillis"`
  2403  		TotalFailures                          gensupport.JSONFloat64 `json:"totalFailures"`
  2404  		*NoMethod
  2405  	}
  2406  	s1.NoMethod = (*NoMethod)(s)
  2407  	if err := json.Unmarshal(data, &s1); err != nil {
  2408  		return err
  2409  	}
  2410  	s.TotalCancellations = float64(s1.TotalCancellations)
  2411  	s.TotalCompletions = float64(s1.TotalCompletions)
  2412  	s.TotalExecutionTimeForCompletionsMillis = float64(s1.TotalExecutionTimeForCompletionsMillis)
  2413  	s.TotalFailures = float64(s1.TotalFailures)
  2414  	return nil
  2415  }
  2416  
  2417  // GoogleCloudDatacatalogV1VertexDatasetSpec: Specification for vertex dataset
  2418  // resources.
  2419  type GoogleCloudDatacatalogV1VertexDatasetSpec struct {
  2420  	// DataItemCount: The number of DataItems in this Dataset. Only apply for
  2421  	// non-structured Dataset.
  2422  	DataItemCount int64 `json:"dataItemCount,omitempty,string"`
  2423  	// DataType: Type of the dataset.
  2424  	//
  2425  	// Possible values:
  2426  	//   "DATA_TYPE_UNSPECIFIED" - Should not be used.
  2427  	//   "TABLE" - Structured data dataset.
  2428  	//   "IMAGE" - Image dataset which supports ImageClassification,
  2429  	// ImageObjectDetection and ImageSegmentation problems.
  2430  	//   "TEXT" - Document dataset which supports TextClassification,
  2431  	// TextExtraction and TextSentiment problems.
  2432  	//   "VIDEO" - Video dataset which supports VideoClassification,
  2433  	// VideoObjectTracking and VideoActionRecognition problems.
  2434  	//   "CONVERSATION" - Conversation dataset which supports conversation
  2435  	// problems.
  2436  	//   "TIME_SERIES" - TimeSeries dataset.
  2437  	//   "DOCUMENT" - Document dataset which supports DocumentAnnotation problems.
  2438  	//   "TEXT_TO_SPEECH" - TextToSpeech dataset which supports TextToSpeech
  2439  	// problems.
  2440  	//   "TRANSLATION" - Translation dataset which supports Translation problems.
  2441  	//   "STORE_VISION" - Store Vision dataset which is used for HITL integration.
  2442  	//   "ENTERPRISE_KNOWLEDGE_GRAPH" - Enterprise Knowledge Graph dataset which is
  2443  	// used for HITL labeling integration.
  2444  	//   "TEXT_PROMPT" - Text prompt dataset which supports Large Language Models.
  2445  	DataType string `json:"dataType,omitempty"`
  2446  	// ForceSendFields is a list of field names (e.g. "DataItemCount") to
  2447  	// unconditionally include in API requests. By default, fields with empty or
  2448  	// default values are omitted from API requests. See
  2449  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2450  	// details.
  2451  	ForceSendFields []string `json:"-"`
  2452  	// NullFields is a list of field names (e.g. "DataItemCount") to include in API
  2453  	// requests with the JSON null value. By default, fields with empty values are
  2454  	// omitted from API requests. See
  2455  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2456  	NullFields []string `json:"-"`
  2457  }
  2458  
  2459  func (s *GoogleCloudDatacatalogV1VertexDatasetSpec) MarshalJSON() ([]byte, error) {
  2460  	type NoMethod GoogleCloudDatacatalogV1VertexDatasetSpec
  2461  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2462  }
  2463  
  2464  // GoogleCloudDatacatalogV1VertexModelSourceInfo: Detail description of the
  2465  // source information of a Vertex model.
  2466  type GoogleCloudDatacatalogV1VertexModelSourceInfo struct {
  2467  	// Copy: If this Model is copy of another Model. If true then source_type
  2468  	// pertains to the original.
  2469  	Copy bool `json:"copy,omitempty"`
  2470  	// SourceType: Type of the model source.
  2471  	//
  2472  	// Possible values:
  2473  	//   "MODEL_SOURCE_TYPE_UNSPECIFIED" - Should not be used.
  2474  	//   "AUTOML" - The Model is uploaded by automl training pipeline.
  2475  	//   "CUSTOM" - The Model is uploaded by user or custom training pipeline.
  2476  	//   "BQML" - The Model is registered and sync'ed from BigQuery ML.
  2477  	//   "MODEL_GARDEN" - The Model is saved or tuned from Model Garden.
  2478  	SourceType string `json:"sourceType,omitempty"`
  2479  	// ForceSendFields is a list of field names (e.g. "Copy") to unconditionally
  2480  	// include in API requests. By default, fields with empty or default values are
  2481  	// omitted from API requests. See
  2482  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2483  	// details.
  2484  	ForceSendFields []string `json:"-"`
  2485  	// NullFields is a list of field names (e.g. "Copy") to include in API requests
  2486  	// with the JSON null value. By default, fields with empty values are omitted
  2487  	// from API requests. See
  2488  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2489  	NullFields []string `json:"-"`
  2490  }
  2491  
  2492  func (s *GoogleCloudDatacatalogV1VertexModelSourceInfo) MarshalJSON() ([]byte, error) {
  2493  	type NoMethod GoogleCloudDatacatalogV1VertexModelSourceInfo
  2494  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2495  }
  2496  
  2497  // GoogleCloudDatacatalogV1VertexModelSpec: Specification for vertex model
  2498  // resources.
  2499  type GoogleCloudDatacatalogV1VertexModelSpec struct {
  2500  	// ContainerImageUri: URI of the Docker image to be used as the custom
  2501  	// container for serving predictions.
  2502  	ContainerImageUri string `json:"containerImageUri,omitempty"`
  2503  	// VersionAliases: User provided version aliases so that a model version can be
  2504  	// referenced via alias
  2505  	VersionAliases []string `json:"versionAliases,omitempty"`
  2506  	// VersionDescription: The description of this version.
  2507  	VersionDescription string `json:"versionDescription,omitempty"`
  2508  	// VersionId: The version ID of the model.
  2509  	VersionId string `json:"versionId,omitempty"`
  2510  	// VertexModelSourceInfo: Source of a Vertex model.
  2511  	VertexModelSourceInfo *GoogleCloudDatacatalogV1VertexModelSourceInfo `json:"vertexModelSourceInfo,omitempty"`
  2512  	// ForceSendFields is a list of field names (e.g. "ContainerImageUri") to
  2513  	// unconditionally include in API requests. By default, fields with empty or
  2514  	// default values are omitted from API requests. See
  2515  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2516  	// details.
  2517  	ForceSendFields []string `json:"-"`
  2518  	// NullFields is a list of field names (e.g. "ContainerImageUri") to include in
  2519  	// API requests with the JSON null value. By default, fields with empty values
  2520  	// are omitted from API requests. See
  2521  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2522  	NullFields []string `json:"-"`
  2523  }
  2524  
  2525  func (s *GoogleCloudDatacatalogV1VertexModelSpec) MarshalJSON() ([]byte, error) {
  2526  	type NoMethod GoogleCloudDatacatalogV1VertexModelSpec
  2527  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2528  }
  2529  
  2530  // GoogleCloudDatacatalogV1ViewSpec: Table view specification.
  2531  type GoogleCloudDatacatalogV1ViewSpec struct {
  2532  	// ViewQuery: Output only. The query that defines the table view.
  2533  	ViewQuery string `json:"viewQuery,omitempty"`
  2534  	// ForceSendFields is a list of field names (e.g. "ViewQuery") to
  2535  	// unconditionally include in API requests. By default, fields with empty or
  2536  	// default values are omitted from API requests. See
  2537  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2538  	// details.
  2539  	ForceSendFields []string `json:"-"`
  2540  	// NullFields is a list of field names (e.g. "ViewQuery") to include in API
  2541  	// requests with the JSON null value. By default, fields with empty values are
  2542  	// omitted from API requests. See
  2543  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2544  	NullFields []string `json:"-"`
  2545  }
  2546  
  2547  func (s *GoogleCloudDatacatalogV1ViewSpec) MarshalJSON() ([]byte, error) {
  2548  	type NoMethod GoogleCloudDatacatalogV1ViewSpec
  2549  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2550  }
  2551  
  2552  // GoogleCloudDatacatalogV1beta1BigQueryDateShardedSpec: Spec for a group of
  2553  // BigQuery tables with name pattern `[prefix]YYYYMMDD`. Context:
  2554  // https://cloud.google.com/bigquery/docs/partitioned-tables#partitioning_versus_sharding
  2555  type GoogleCloudDatacatalogV1beta1BigQueryDateShardedSpec struct {
  2556  	// Dataset: Output only. The Data Catalog resource name of the dataset entry
  2557  	// the current table belongs to, for example,
  2558  	// `projects/{project_id}/locations/{location}/entrygroups/{entry_group_id}/entr
  2559  	// ies/{entry_id}`.
  2560  	Dataset string `json:"dataset,omitempty"`
  2561  	// ShardCount: Output only. Total number of shards.
  2562  	ShardCount int64 `json:"shardCount,omitempty,string"`
  2563  	// TablePrefix: Output only. The table name prefix of the shards. The name of
  2564  	// any given shard is `[table_prefix]YYYYMMDD`, for example, for shard
  2565  	// `MyTable20180101`, the `table_prefix` is `MyTable`.
  2566  	TablePrefix string `json:"tablePrefix,omitempty"`
  2567  	// ForceSendFields is a list of field names (e.g. "Dataset") to unconditionally
  2568  	// include in API requests. By default, fields with empty or default values are
  2569  	// omitted from API requests. See
  2570  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2571  	// details.
  2572  	ForceSendFields []string `json:"-"`
  2573  	// NullFields is a list of field names (e.g. "Dataset") to include in API
  2574  	// requests with the JSON null value. By default, fields with empty values are
  2575  	// omitted from API requests. See
  2576  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2577  	NullFields []string `json:"-"`
  2578  }
  2579  
  2580  func (s *GoogleCloudDatacatalogV1beta1BigQueryDateShardedSpec) MarshalJSON() ([]byte, error) {
  2581  	type NoMethod GoogleCloudDatacatalogV1beta1BigQueryDateShardedSpec
  2582  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2583  }
  2584  
  2585  // GoogleCloudDatacatalogV1beta1BigQueryTableSpec: Describes a BigQuery table.
  2586  type GoogleCloudDatacatalogV1beta1BigQueryTableSpec struct {
  2587  	// TableSourceType: Output only. The table source type.
  2588  	//
  2589  	// Possible values:
  2590  	//   "TABLE_SOURCE_TYPE_UNSPECIFIED" - Default unknown type.
  2591  	//   "BIGQUERY_VIEW" - Table view.
  2592  	//   "BIGQUERY_TABLE" - BigQuery native table.
  2593  	//   "BIGQUERY_MATERIALIZED_VIEW" - BigQuery materialized view.
  2594  	TableSourceType string `json:"tableSourceType,omitempty"`
  2595  	// TableSpec: Spec of a BigQuery table. This field should only be populated if
  2596  	// `table_source_type` is `BIGQUERY_TABLE`.
  2597  	TableSpec *GoogleCloudDatacatalogV1beta1TableSpec `json:"tableSpec,omitempty"`
  2598  	// ViewSpec: Table view specification. This field should only be populated if
  2599  	// `table_source_type` is `BIGQUERY_VIEW`.
  2600  	ViewSpec *GoogleCloudDatacatalogV1beta1ViewSpec `json:"viewSpec,omitempty"`
  2601  	// ForceSendFields is a list of field names (e.g. "TableSourceType") to
  2602  	// unconditionally include in API requests. By default, fields with empty or
  2603  	// default values are omitted from API requests. See
  2604  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2605  	// details.
  2606  	ForceSendFields []string `json:"-"`
  2607  	// NullFields is a list of field names (e.g. "TableSourceType") to include in
  2608  	// API requests with the JSON null value. By default, fields with empty values
  2609  	// are omitted from API requests. See
  2610  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2611  	NullFields []string `json:"-"`
  2612  }
  2613  
  2614  func (s *GoogleCloudDatacatalogV1beta1BigQueryTableSpec) MarshalJSON() ([]byte, error) {
  2615  	type NoMethod GoogleCloudDatacatalogV1beta1BigQueryTableSpec
  2616  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2617  }
  2618  
  2619  // GoogleCloudDatacatalogV1beta1ColumnSchema: Representation of a column within
  2620  // a schema. Columns could be nested inside other columns.
  2621  type GoogleCloudDatacatalogV1beta1ColumnSchema struct {
  2622  	// Column: Required. Name of the column.
  2623  	Column string `json:"column,omitempty"`
  2624  	// Description: Optional. Description of the column. Default value is an empty
  2625  	// string.
  2626  	Description string `json:"description,omitempty"`
  2627  	// Mode: Optional. A column's mode indicates whether the values in this column
  2628  	// are required, nullable, etc. Only `NULLABLE`, `REQUIRED` and `REPEATED` are
  2629  	// supported. Default mode is `NULLABLE`.
  2630  	Mode string `json:"mode,omitempty"`
  2631  	// Subcolumns: Optional. Schema of sub-columns. A column can have zero or more
  2632  	// sub-columns.
  2633  	Subcolumns []*GoogleCloudDatacatalogV1beta1ColumnSchema `json:"subcolumns,omitempty"`
  2634  	// Type: Required. Type of the column.
  2635  	Type string `json:"type,omitempty"`
  2636  	// ForceSendFields is a list of field names (e.g. "Column") to unconditionally
  2637  	// include in API requests. By default, fields with empty or default values are
  2638  	// omitted from API requests. See
  2639  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2640  	// details.
  2641  	ForceSendFields []string `json:"-"`
  2642  	// NullFields is a list of field names (e.g. "Column") to include in API
  2643  	// requests with the JSON null value. By default, fields with empty values are
  2644  	// omitted from API requests. See
  2645  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2646  	NullFields []string `json:"-"`
  2647  }
  2648  
  2649  func (s *GoogleCloudDatacatalogV1beta1ColumnSchema) MarshalJSON() ([]byte, error) {
  2650  	type NoMethod GoogleCloudDatacatalogV1beta1ColumnSchema
  2651  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2652  }
  2653  
  2654  // GoogleCloudDatacatalogV1beta1Entry: Entry Metadata. A Data Catalog Entry
  2655  // resource represents another resource in Google Cloud Platform (such as a
  2656  // BigQuery dataset or a Pub/Sub topic), or outside of Google Cloud Platform.
  2657  // Clients can use the `linked_resource` field in the Entry resource to refer
  2658  // to the original resource ID of the source system. An Entry resource contains
  2659  // resource details, such as its schema. An Entry can also be used to attach
  2660  // flexible metadata, such as a Tag.
  2661  type GoogleCloudDatacatalogV1beta1Entry struct {
  2662  	// BigqueryDateShardedSpec: Specification for a group of BigQuery tables with
  2663  	// name pattern `[prefix]YYYYMMDD`. Context:
  2664  	// https://cloud.google.com/bigquery/docs/partitioned-tables#partitioning_versus_sharding.
  2665  	BigqueryDateShardedSpec *GoogleCloudDatacatalogV1beta1BigQueryDateShardedSpec `json:"bigqueryDateShardedSpec,omitempty"`
  2666  	// BigqueryTableSpec: Specification that applies to a BigQuery table. This is
  2667  	// only valid on entries of type `TABLE`.
  2668  	BigqueryTableSpec *GoogleCloudDatacatalogV1beta1BigQueryTableSpec `json:"bigqueryTableSpec,omitempty"`
  2669  	// Description: Entry description, which can consist of several sentences or
  2670  	// paragraphs that describe entry contents. Default value is an empty string.
  2671  	Description string `json:"description,omitempty"`
  2672  	// DisplayName: Display information such as title and description. A short name
  2673  	// to identify the entry, for example, "Analytics Data - Jan 2011". Default
  2674  	// value is an empty string.
  2675  	DisplayName string `json:"displayName,omitempty"`
  2676  	// GcsFilesetSpec: Specification that applies to a Cloud Storage fileset. This
  2677  	// is only valid on entries of type FILESET.
  2678  	GcsFilesetSpec *GoogleCloudDatacatalogV1beta1GcsFilesetSpec `json:"gcsFilesetSpec,omitempty"`
  2679  	// IntegratedSystem: Output only. This field indicates the entry's source
  2680  	// system that Data Catalog integrates with, such as BigQuery or Pub/Sub.
  2681  	//
  2682  	// Possible values:
  2683  	//   "INTEGRATED_SYSTEM_UNSPECIFIED" - Default unknown system.
  2684  	//   "BIGQUERY" - BigQuery.
  2685  	//   "CLOUD_PUBSUB" - Cloud Pub/Sub.
  2686  	IntegratedSystem string `json:"integratedSystem,omitempty"`
  2687  	// LinkedResource: The resource this metadata entry refers to. For Google Cloud
  2688  	// Platform resources, `linked_resource` is the full name of the resource
  2689  	// (https://cloud.google.com/apis/design/resource_names#full_resource_name).
  2690  	// For example, the `linked_resource` for a table resource from BigQuery is: *
  2691  	// //bigquery.googleapis.com/projects/projectId/datasets/datasetId/tables/tableI
  2692  	// d Output only when Entry is of type in the EntryType enum. For entries with
  2693  	// user_specified_type, this field is optional and defaults to an empty string.
  2694  	LinkedResource string `json:"linkedResource,omitempty"`
  2695  	// Name: Output only. Identifier. The Data Catalog resource name of the entry
  2696  	// in URL format. Example: *
  2697  	// projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/entri
  2698  	// es/{entry_id} Note that this Entry and its child resources may not actually
  2699  	// be stored in the location in this name.
  2700  	Name string `json:"name,omitempty"`
  2701  	// Schema: Schema of the entry. An entry might not have any schema attached to
  2702  	// it.
  2703  	Schema *GoogleCloudDatacatalogV1beta1Schema `json:"schema,omitempty"`
  2704  	// SourceSystemTimestamps: Output only. Timestamps about the underlying
  2705  	// resource, not about this Data Catalog entry. Output only when Entry is of
  2706  	// type in the EntryType enum. For entries with user_specified_type, this field
  2707  	// is optional and defaults to an empty timestamp.
  2708  	SourceSystemTimestamps *GoogleCloudDatacatalogV1beta1SystemTimestamps `json:"sourceSystemTimestamps,omitempty"`
  2709  	// Type: The type of the entry. Only used for Entries with types in the
  2710  	// EntryType enum.
  2711  	//
  2712  	// Possible values:
  2713  	//   "ENTRY_TYPE_UNSPECIFIED" - Default unknown type.
  2714  	//   "TABLE" - Output only. The type of entry that has a GoogleSQL schema,
  2715  	// including logical views.
  2716  	//   "MODEL" - Output only. The type of models.
  2717  	// https://cloud.google.com/bigquery-ml/docs/bigqueryml-intro
  2718  	//   "DATA_STREAM" - Output only. An entry type which is used for streaming
  2719  	// entries. Example: Pub/Sub topic.
  2720  	//   "FILESET" - An entry type which is a set of files or objects. Example:
  2721  	// Cloud Storage fileset.
  2722  	Type string `json:"type,omitempty"`
  2723  	// UsageSignal: Output only. Statistics on the usage level of the resource.
  2724  	UsageSignal *GoogleCloudDatacatalogV1beta1UsageSignal `json:"usageSignal,omitempty"`
  2725  	// UserSpecifiedSystem: This field indicates the entry's source system that
  2726  	// Data Catalog does not integrate with. `user_specified_system` strings must
  2727  	// begin with a letter or underscore and can only contain letters, numbers, and
  2728  	// underscores; are case insensitive; must be at least 1 character and at most
  2729  	// 64 characters long.
  2730  	UserSpecifiedSystem string `json:"userSpecifiedSystem,omitempty"`
  2731  	// UserSpecifiedType: Entry type if it does not fit any of the input-allowed
  2732  	// values listed in `EntryType` enum above. When creating an entry, users
  2733  	// should check the enum values first, if nothing matches the entry to be
  2734  	// created, then provide a custom value, for example "my_special_type".
  2735  	// `user_specified_type` strings must begin with a letter or underscore and can
  2736  	// only contain letters, numbers, and underscores; are case insensitive; must
  2737  	// be at least 1 character and at most 64 characters long. Currently, only
  2738  	// FILESET enum value is allowed. All other entries created through Data
  2739  	// Catalog must use `user_specified_type`.
  2740  	UserSpecifiedType string `json:"userSpecifiedType,omitempty"`
  2741  
  2742  	// ServerResponse contains the HTTP response code and headers from the server.
  2743  	googleapi.ServerResponse `json:"-"`
  2744  	// ForceSendFields is a list of field names (e.g. "BigqueryDateShardedSpec") to
  2745  	// unconditionally include in API requests. By default, fields with empty or
  2746  	// default values are omitted from API requests. See
  2747  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2748  	// details.
  2749  	ForceSendFields []string `json:"-"`
  2750  	// NullFields is a list of field names (e.g. "BigqueryDateShardedSpec") to
  2751  	// include in API requests with the JSON null value. By default, fields with
  2752  	// empty values are omitted from API requests. See
  2753  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2754  	NullFields []string `json:"-"`
  2755  }
  2756  
  2757  func (s *GoogleCloudDatacatalogV1beta1Entry) MarshalJSON() ([]byte, error) {
  2758  	type NoMethod GoogleCloudDatacatalogV1beta1Entry
  2759  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2760  }
  2761  
  2762  // GoogleCloudDatacatalogV1beta1EntryGroup: EntryGroup Metadata. An EntryGroup
  2763  // resource represents a logical grouping of zero or more Data Catalog Entry
  2764  // resources.
  2765  type GoogleCloudDatacatalogV1beta1EntryGroup struct {
  2766  	// DataCatalogTimestamps: Output only. Timestamps about this EntryGroup.
  2767  	// Default value is empty timestamps.
  2768  	DataCatalogTimestamps *GoogleCloudDatacatalogV1beta1SystemTimestamps `json:"dataCatalogTimestamps,omitempty"`
  2769  	// Description: Entry group description, which can consist of several sentences
  2770  	// or paragraphs that describe entry group contents. Default value is an empty
  2771  	// string.
  2772  	Description string `json:"description,omitempty"`
  2773  	// DisplayName: A short name to identify the entry group, for example,
  2774  	// "analytics data - jan 2011". Default value is an empty string.
  2775  	DisplayName string `json:"displayName,omitempty"`
  2776  	// Name: Identifier. The resource name of the entry group in URL format.
  2777  	// Example: *
  2778  	// projects/{project_id}/locations/{location}/entryGroups/{entry_group_id} Note
  2779  	// that this EntryGroup and its child resources may not actually be stored in
  2780  	// the location in this name.
  2781  	Name string `json:"name,omitempty"`
  2782  
  2783  	// ServerResponse contains the HTTP response code and headers from the server.
  2784  	googleapi.ServerResponse `json:"-"`
  2785  	// ForceSendFields is a list of field names (e.g. "DataCatalogTimestamps") to
  2786  	// unconditionally include in API requests. By default, fields with empty or
  2787  	// default values are omitted from API requests. See
  2788  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2789  	// details.
  2790  	ForceSendFields []string `json:"-"`
  2791  	// NullFields is a list of field names (e.g. "DataCatalogTimestamps") to
  2792  	// include in API requests with the JSON null value. By default, fields with
  2793  	// empty values are omitted from API requests. See
  2794  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2795  	NullFields []string `json:"-"`
  2796  }
  2797  
  2798  func (s *GoogleCloudDatacatalogV1beta1EntryGroup) MarshalJSON() ([]byte, error) {
  2799  	type NoMethod GoogleCloudDatacatalogV1beta1EntryGroup
  2800  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2801  }
  2802  
  2803  // GoogleCloudDatacatalogV1beta1ExportTaxonomiesResponse: Response message for
  2804  // ExportTaxonomies.
  2805  type GoogleCloudDatacatalogV1beta1ExportTaxonomiesResponse struct {
  2806  	// Taxonomies: List of taxonomies and policy tags in a tree structure.
  2807  	Taxonomies []*GoogleCloudDatacatalogV1beta1SerializedTaxonomy `json:"taxonomies,omitempty"`
  2808  
  2809  	// ServerResponse contains the HTTP response code and headers from the server.
  2810  	googleapi.ServerResponse `json:"-"`
  2811  	// ForceSendFields is a list of field names (e.g. "Taxonomies") to
  2812  	// unconditionally include in API requests. By default, fields with empty or
  2813  	// default values are omitted from API requests. See
  2814  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2815  	// details.
  2816  	ForceSendFields []string `json:"-"`
  2817  	// NullFields is a list of field names (e.g. "Taxonomies") to include in API
  2818  	// requests with the JSON null value. By default, fields with empty values are
  2819  	// omitted from API requests. See
  2820  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2821  	NullFields []string `json:"-"`
  2822  }
  2823  
  2824  func (s *GoogleCloudDatacatalogV1beta1ExportTaxonomiesResponse) MarshalJSON() ([]byte, error) {
  2825  	type NoMethod GoogleCloudDatacatalogV1beta1ExportTaxonomiesResponse
  2826  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2827  }
  2828  
  2829  type GoogleCloudDatacatalogV1beta1FieldType struct {
  2830  	// EnumType: Represents an enum type.
  2831  	EnumType *GoogleCloudDatacatalogV1beta1FieldTypeEnumType `json:"enumType,omitempty"`
  2832  	// PrimitiveType: Represents primitive types - string, bool etc.
  2833  	//
  2834  	// Possible values:
  2835  	//   "PRIMITIVE_TYPE_UNSPECIFIED" - This is the default invalid value for a
  2836  	// type.
  2837  	//   "DOUBLE" - A double precision number.
  2838  	//   "STRING" - An UTF-8 string.
  2839  	//   "BOOL" - A boolean value.
  2840  	//   "TIMESTAMP" - A timestamp.
  2841  	PrimitiveType string `json:"primitiveType,omitempty"`
  2842  	// ForceSendFields is a list of field names (e.g. "EnumType") to
  2843  	// unconditionally include in API requests. By default, fields with empty or
  2844  	// default values are omitted from API requests. See
  2845  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2846  	// details.
  2847  	ForceSendFields []string `json:"-"`
  2848  	// NullFields is a list of field names (e.g. "EnumType") to include in API
  2849  	// requests with the JSON null value. By default, fields with empty values are
  2850  	// omitted from API requests. See
  2851  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2852  	NullFields []string `json:"-"`
  2853  }
  2854  
  2855  func (s *GoogleCloudDatacatalogV1beta1FieldType) MarshalJSON() ([]byte, error) {
  2856  	type NoMethod GoogleCloudDatacatalogV1beta1FieldType
  2857  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2858  }
  2859  
  2860  type GoogleCloudDatacatalogV1beta1FieldTypeEnumType struct {
  2861  	AllowedValues []*GoogleCloudDatacatalogV1beta1FieldTypeEnumTypeEnumValue `json:"allowedValues,omitempty"`
  2862  	// ForceSendFields is a list of field names (e.g. "AllowedValues") to
  2863  	// unconditionally include in API requests. By default, fields with empty or
  2864  	// default values are omitted from API requests. See
  2865  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2866  	// details.
  2867  	ForceSendFields []string `json:"-"`
  2868  	// NullFields is a list of field names (e.g. "AllowedValues") to include in API
  2869  	// requests with the JSON null value. By default, fields with empty values are
  2870  	// omitted from API requests. See
  2871  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2872  	NullFields []string `json:"-"`
  2873  }
  2874  
  2875  func (s *GoogleCloudDatacatalogV1beta1FieldTypeEnumType) MarshalJSON() ([]byte, error) {
  2876  	type NoMethod GoogleCloudDatacatalogV1beta1FieldTypeEnumType
  2877  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2878  }
  2879  
  2880  type GoogleCloudDatacatalogV1beta1FieldTypeEnumTypeEnumValue struct {
  2881  	// DisplayName: Required. The display name of the enum value. Must not be an
  2882  	// empty string.
  2883  	DisplayName string `json:"displayName,omitempty"`
  2884  	// ForceSendFields is a list of field names (e.g. "DisplayName") to
  2885  	// unconditionally include in API requests. By default, fields with empty or
  2886  	// default values are omitted from API requests. See
  2887  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2888  	// details.
  2889  	ForceSendFields []string `json:"-"`
  2890  	// NullFields is a list of field names (e.g. "DisplayName") to include in API
  2891  	// requests with the JSON null value. By default, fields with empty values are
  2892  	// omitted from API requests. See
  2893  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2894  	NullFields []string `json:"-"`
  2895  }
  2896  
  2897  func (s *GoogleCloudDatacatalogV1beta1FieldTypeEnumTypeEnumValue) MarshalJSON() ([]byte, error) {
  2898  	type NoMethod GoogleCloudDatacatalogV1beta1FieldTypeEnumTypeEnumValue
  2899  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2900  }
  2901  
  2902  // GoogleCloudDatacatalogV1beta1GcsFileSpec: Specifications of a single file in
  2903  // Cloud Storage.
  2904  type GoogleCloudDatacatalogV1beta1GcsFileSpec struct {
  2905  	// FilePath: Required. The full file path. Example: `gs://bucket_name/a/b.txt`.
  2906  	FilePath string `json:"filePath,omitempty"`
  2907  	// GcsTimestamps: Output only. Timestamps about the Cloud Storage file.
  2908  	GcsTimestamps *GoogleCloudDatacatalogV1beta1SystemTimestamps `json:"gcsTimestamps,omitempty"`
  2909  	// SizeBytes: Output only. The size of the file, in bytes.
  2910  	SizeBytes int64 `json:"sizeBytes,omitempty,string"`
  2911  	// ForceSendFields is a list of field names (e.g. "FilePath") to
  2912  	// unconditionally include in API requests. By default, fields with empty or
  2913  	// default values are omitted from API requests. See
  2914  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2915  	// details.
  2916  	ForceSendFields []string `json:"-"`
  2917  	// NullFields is a list of field names (e.g. "FilePath") to include in API
  2918  	// requests with the JSON null value. By default, fields with empty values are
  2919  	// omitted from API requests. See
  2920  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2921  	NullFields []string `json:"-"`
  2922  }
  2923  
  2924  func (s *GoogleCloudDatacatalogV1beta1GcsFileSpec) MarshalJSON() ([]byte, error) {
  2925  	type NoMethod GoogleCloudDatacatalogV1beta1GcsFileSpec
  2926  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2927  }
  2928  
  2929  // GoogleCloudDatacatalogV1beta1GcsFilesetSpec: Describes a Cloud Storage
  2930  // fileset entry.
  2931  type GoogleCloudDatacatalogV1beta1GcsFilesetSpec struct {
  2932  	// FilePatterns: Required. Patterns to identify a set of files in Google Cloud
  2933  	// Storage. See Cloud Storage documentation
  2934  	// (https://cloud.google.com/storage/docs/gsutil/addlhelp/WildcardNames) for
  2935  	// more information. Note that bucket wildcards are currently not supported.
  2936  	// Examples of valid file_patterns: * `gs://bucket_name/dir/*`: matches all
  2937  	// files within `bucket_name/dir` directory. * `gs://bucket_name/dir/**`:
  2938  	// matches all files in `bucket_name/dir` spanning all subdirectories. *
  2939  	// `gs://bucket_name/file*`: matches files prefixed by `file` in `bucket_name`
  2940  	// * `gs://bucket_name/??.txt`: matches files with two characters followed by
  2941  	// `.txt` in `bucket_name` * `gs://bucket_name/[aeiou].txt`: matches files that
  2942  	// contain a single vowel character followed by `.txt` in `bucket_name` *
  2943  	// `gs://bucket_name/[a-m].txt`: matches files that contain `a`, `b`, ... or
  2944  	// `m` followed by `.txt` in `bucket_name` * `gs://bucket_name/a/*/b`: matches
  2945  	// all files in `bucket_name` that match `a/*/b` pattern, such as `a/c/b`,
  2946  	// `a/d/b` * `gs://another_bucket/a.txt`: matches `gs://another_bucket/a.txt`
  2947  	// You can combine wildcards to provide more powerful matches, for example: *
  2948  	// `gs://bucket_name/[a-m]??.j*g`
  2949  	FilePatterns []string `json:"filePatterns,omitempty"`
  2950  	// SampleGcsFileSpecs: Output only. Sample files contained in this fileset, not
  2951  	// all files contained in this fileset are represented here.
  2952  	SampleGcsFileSpecs []*GoogleCloudDatacatalogV1beta1GcsFileSpec `json:"sampleGcsFileSpecs,omitempty"`
  2953  	// ForceSendFields is a list of field names (e.g. "FilePatterns") to
  2954  	// unconditionally include in API requests. By default, fields with empty or
  2955  	// default values are omitted from API requests. See
  2956  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2957  	// details.
  2958  	ForceSendFields []string `json:"-"`
  2959  	// NullFields is a list of field names (e.g. "FilePatterns") to include in API
  2960  	// requests with the JSON null value. By default, fields with empty values are
  2961  	// omitted from API requests. See
  2962  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2963  	NullFields []string `json:"-"`
  2964  }
  2965  
  2966  func (s *GoogleCloudDatacatalogV1beta1GcsFilesetSpec) MarshalJSON() ([]byte, error) {
  2967  	type NoMethod GoogleCloudDatacatalogV1beta1GcsFilesetSpec
  2968  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2969  }
  2970  
  2971  // GoogleCloudDatacatalogV1beta1ImportTaxonomiesRequest: Request message for
  2972  // ImportTaxonomies.
  2973  type GoogleCloudDatacatalogV1beta1ImportTaxonomiesRequest struct {
  2974  	// InlineSource: Inline source used for taxonomies to be imported.
  2975  	InlineSource *GoogleCloudDatacatalogV1beta1InlineSource `json:"inlineSource,omitempty"`
  2976  	// ForceSendFields is a list of field names (e.g. "InlineSource") to
  2977  	// unconditionally include in API requests. By default, fields with empty or
  2978  	// default values are omitted from API requests. See
  2979  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2980  	// details.
  2981  	ForceSendFields []string `json:"-"`
  2982  	// NullFields is a list of field names (e.g. "InlineSource") to include in API
  2983  	// requests with the JSON null value. By default, fields with empty values are
  2984  	// omitted from API requests. See
  2985  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2986  	NullFields []string `json:"-"`
  2987  }
  2988  
  2989  func (s *GoogleCloudDatacatalogV1beta1ImportTaxonomiesRequest) MarshalJSON() ([]byte, error) {
  2990  	type NoMethod GoogleCloudDatacatalogV1beta1ImportTaxonomiesRequest
  2991  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2992  }
  2993  
  2994  // GoogleCloudDatacatalogV1beta1ImportTaxonomiesResponse: Response message for
  2995  // ImportTaxonomies.
  2996  type GoogleCloudDatacatalogV1beta1ImportTaxonomiesResponse struct {
  2997  	// Taxonomies: Taxonomies that were imported.
  2998  	Taxonomies []*GoogleCloudDatacatalogV1beta1Taxonomy `json:"taxonomies,omitempty"`
  2999  
  3000  	// ServerResponse contains the HTTP response code and headers from the server.
  3001  	googleapi.ServerResponse `json:"-"`
  3002  	// ForceSendFields is a list of field names (e.g. "Taxonomies") to
  3003  	// unconditionally include in API requests. By default, fields with empty or
  3004  	// default values are omitted from API requests. See
  3005  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3006  	// details.
  3007  	ForceSendFields []string `json:"-"`
  3008  	// NullFields is a list of field names (e.g. "Taxonomies") to include in API
  3009  	// requests with the JSON null value. By default, fields with empty values are
  3010  	// omitted from API requests. See
  3011  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3012  	NullFields []string `json:"-"`
  3013  }
  3014  
  3015  func (s *GoogleCloudDatacatalogV1beta1ImportTaxonomiesResponse) MarshalJSON() ([]byte, error) {
  3016  	type NoMethod GoogleCloudDatacatalogV1beta1ImportTaxonomiesResponse
  3017  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3018  }
  3019  
  3020  // GoogleCloudDatacatalogV1beta1InlineSource: Inline source used for taxonomies
  3021  // import.
  3022  type GoogleCloudDatacatalogV1beta1InlineSource struct {
  3023  	// Taxonomies: Required. Taxonomies to be imported.
  3024  	Taxonomies []*GoogleCloudDatacatalogV1beta1SerializedTaxonomy `json:"taxonomies,omitempty"`
  3025  	// ForceSendFields is a list of field names (e.g. "Taxonomies") to
  3026  	// unconditionally include in API requests. By default, fields with empty or
  3027  	// default values are omitted from API requests. See
  3028  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3029  	// details.
  3030  	ForceSendFields []string `json:"-"`
  3031  	// NullFields is a list of field names (e.g. "Taxonomies") to include in API
  3032  	// requests with the JSON null value. By default, fields with empty values are
  3033  	// omitted from API requests. See
  3034  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3035  	NullFields []string `json:"-"`
  3036  }
  3037  
  3038  func (s *GoogleCloudDatacatalogV1beta1InlineSource) MarshalJSON() ([]byte, error) {
  3039  	type NoMethod GoogleCloudDatacatalogV1beta1InlineSource
  3040  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3041  }
  3042  
  3043  // GoogleCloudDatacatalogV1beta1ListEntriesResponse: Response message for
  3044  // ListEntries.
  3045  type GoogleCloudDatacatalogV1beta1ListEntriesResponse struct {
  3046  	// Entries: Entry details.
  3047  	Entries []*GoogleCloudDatacatalogV1beta1Entry `json:"entries,omitempty"`
  3048  	// NextPageToken: Token to retrieve the next page of results. It is set to
  3049  	// empty if no items remain in results.
  3050  	NextPageToken string `json:"nextPageToken,omitempty"`
  3051  
  3052  	// ServerResponse contains the HTTP response code and headers from the server.
  3053  	googleapi.ServerResponse `json:"-"`
  3054  	// ForceSendFields is a list of field names (e.g. "Entries") to unconditionally
  3055  	// include in API requests. By default, fields with empty or default values are
  3056  	// omitted from API requests. See
  3057  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3058  	// details.
  3059  	ForceSendFields []string `json:"-"`
  3060  	// NullFields is a list of field names (e.g. "Entries") to include in API
  3061  	// requests with the JSON null value. By default, fields with empty values are
  3062  	// omitted from API requests. See
  3063  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3064  	NullFields []string `json:"-"`
  3065  }
  3066  
  3067  func (s *GoogleCloudDatacatalogV1beta1ListEntriesResponse) MarshalJSON() ([]byte, error) {
  3068  	type NoMethod GoogleCloudDatacatalogV1beta1ListEntriesResponse
  3069  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3070  }
  3071  
  3072  // GoogleCloudDatacatalogV1beta1ListEntryGroupsResponse: Response message for
  3073  // ListEntryGroups.
  3074  type GoogleCloudDatacatalogV1beta1ListEntryGroupsResponse struct {
  3075  	// EntryGroups: EntryGroup details.
  3076  	EntryGroups []*GoogleCloudDatacatalogV1beta1EntryGroup `json:"entryGroups,omitempty"`
  3077  	// NextPageToken: Token to retrieve the next page of results. It is set to
  3078  	// empty if no items remain in results.
  3079  	NextPageToken string `json:"nextPageToken,omitempty"`
  3080  
  3081  	// ServerResponse contains the HTTP response code and headers from the server.
  3082  	googleapi.ServerResponse `json:"-"`
  3083  	// ForceSendFields is a list of field names (e.g. "EntryGroups") to
  3084  	// unconditionally include in API requests. By default, fields with empty or
  3085  	// default values are omitted from API requests. See
  3086  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3087  	// details.
  3088  	ForceSendFields []string `json:"-"`
  3089  	// NullFields is a list of field names (e.g. "EntryGroups") to include in API
  3090  	// requests with the JSON null value. By default, fields with empty values are
  3091  	// omitted from API requests. See
  3092  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3093  	NullFields []string `json:"-"`
  3094  }
  3095  
  3096  func (s *GoogleCloudDatacatalogV1beta1ListEntryGroupsResponse) MarshalJSON() ([]byte, error) {
  3097  	type NoMethod GoogleCloudDatacatalogV1beta1ListEntryGroupsResponse
  3098  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3099  }
  3100  
  3101  // GoogleCloudDatacatalogV1beta1ListPolicyTagsResponse: Response message for
  3102  // ListPolicyTags.
  3103  type GoogleCloudDatacatalogV1beta1ListPolicyTagsResponse struct {
  3104  	// NextPageToken: Token used to retrieve the next page of results, or empty if
  3105  	// there are no more results in the list.
  3106  	NextPageToken string `json:"nextPageToken,omitempty"`
  3107  	// PolicyTags: The policy tags that are in the requested taxonomy.
  3108  	PolicyTags []*GoogleCloudDatacatalogV1beta1PolicyTag `json:"policyTags,omitempty"`
  3109  
  3110  	// ServerResponse contains the HTTP response code and headers from the server.
  3111  	googleapi.ServerResponse `json:"-"`
  3112  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  3113  	// unconditionally include in API requests. By default, fields with empty or
  3114  	// default values are omitted from API requests. See
  3115  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3116  	// details.
  3117  	ForceSendFields []string `json:"-"`
  3118  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  3119  	// requests with the JSON null value. By default, fields with empty values are
  3120  	// omitted from API requests. See
  3121  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3122  	NullFields []string `json:"-"`
  3123  }
  3124  
  3125  func (s *GoogleCloudDatacatalogV1beta1ListPolicyTagsResponse) MarshalJSON() ([]byte, error) {
  3126  	type NoMethod GoogleCloudDatacatalogV1beta1ListPolicyTagsResponse
  3127  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3128  }
  3129  
  3130  // GoogleCloudDatacatalogV1beta1ListTagsResponse: Response message for
  3131  // ListTags.
  3132  type GoogleCloudDatacatalogV1beta1ListTagsResponse struct {
  3133  	// NextPageToken: Token to retrieve the next page of results. It is set to
  3134  	// empty if no items remain in results.
  3135  	NextPageToken string `json:"nextPageToken,omitempty"`
  3136  	// Tags: Tag details.
  3137  	Tags []*GoogleCloudDatacatalogV1beta1Tag `json:"tags,omitempty"`
  3138  
  3139  	// ServerResponse contains the HTTP response code and headers from the server.
  3140  	googleapi.ServerResponse `json:"-"`
  3141  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  3142  	// unconditionally include in API requests. By default, fields with empty or
  3143  	// default values are omitted from API requests. See
  3144  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3145  	// details.
  3146  	ForceSendFields []string `json:"-"`
  3147  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  3148  	// requests with the JSON null value. By default, fields with empty values are
  3149  	// omitted from API requests. See
  3150  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3151  	NullFields []string `json:"-"`
  3152  }
  3153  
  3154  func (s *GoogleCloudDatacatalogV1beta1ListTagsResponse) MarshalJSON() ([]byte, error) {
  3155  	type NoMethod GoogleCloudDatacatalogV1beta1ListTagsResponse
  3156  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3157  }
  3158  
  3159  // GoogleCloudDatacatalogV1beta1ListTaxonomiesResponse: Response message for
  3160  // ListTaxonomies.
  3161  type GoogleCloudDatacatalogV1beta1ListTaxonomiesResponse struct {
  3162  	// NextPageToken: Token used to retrieve the next page of results, or empty if
  3163  	// there are no more results in the list.
  3164  	NextPageToken string `json:"nextPageToken,omitempty"`
  3165  	// Taxonomies: Taxonomies that the project contains.
  3166  	Taxonomies []*GoogleCloudDatacatalogV1beta1Taxonomy `json:"taxonomies,omitempty"`
  3167  
  3168  	// ServerResponse contains the HTTP response code and headers from the server.
  3169  	googleapi.ServerResponse `json:"-"`
  3170  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  3171  	// unconditionally include in API requests. By default, fields with empty or
  3172  	// default values are omitted from API requests. See
  3173  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3174  	// details.
  3175  	ForceSendFields []string `json:"-"`
  3176  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  3177  	// requests with the JSON null value. By default, fields with empty values are
  3178  	// omitted from API requests. See
  3179  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3180  	NullFields []string `json:"-"`
  3181  }
  3182  
  3183  func (s *GoogleCloudDatacatalogV1beta1ListTaxonomiesResponse) MarshalJSON() ([]byte, error) {
  3184  	type NoMethod GoogleCloudDatacatalogV1beta1ListTaxonomiesResponse
  3185  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3186  }
  3187  
  3188  // GoogleCloudDatacatalogV1beta1PolicyTag: Denotes one policy tag in a taxonomy
  3189  // (e.g. ssn). Policy Tags can be defined in a hierarchy. For example, consider
  3190  // the following hierarchy: Geolocation -> (LatLong, City, ZipCode). PolicyTag
  3191  // "Geolocation" contains three child policy tags: "LatLong", "City", and
  3192  // "ZipCode".
  3193  type GoogleCloudDatacatalogV1beta1PolicyTag struct {
  3194  	// ChildPolicyTags: Output only. Resource names of child policy tags of this
  3195  	// policy tag.
  3196  	ChildPolicyTags []string `json:"childPolicyTags,omitempty"`
  3197  	// Description: Description of this policy tag. It must: contain only unicode
  3198  	// characters, tabs, newlines, carriage returns and page breaks; and be at most
  3199  	// 2000 bytes long when encoded in UTF-8. If not set, defaults to an empty
  3200  	// description. If not set, defaults to an empty description.
  3201  	Description string `json:"description,omitempty"`
  3202  	// DisplayName: Required. User defined name of this policy tag. It must: be
  3203  	// unique within the parent taxonomy; contain only unicode letters, numbers,
  3204  	// underscores, dashes and spaces; not start or end with spaces; and be at most
  3205  	// 200 bytes long when encoded in UTF-8.
  3206  	DisplayName string `json:"displayName,omitempty"`
  3207  	// Name: Identifier. Resource name of this policy tag, whose format is:
  3208  	// "projects/{project_number}/locations/{location_id}/taxonomies/{taxonomy_id}/p
  3209  	// olicyTags/{id}".
  3210  	Name string `json:"name,omitempty"`
  3211  	// ParentPolicyTag: Resource name of this policy tag's parent policy tag (e.g.
  3212  	// for the "LatLong" policy tag in the example above, this field contains the
  3213  	// resource name of the "Geolocation" policy tag). If empty, it means this
  3214  	// policy tag is a top level policy tag (e.g. this field is empty for the
  3215  	// "Geolocation" policy tag in the example above). If not set, defaults to an
  3216  	// empty string.
  3217  	ParentPolicyTag string `json:"parentPolicyTag,omitempty"`
  3218  
  3219  	// ServerResponse contains the HTTP response code and headers from the server.
  3220  	googleapi.ServerResponse `json:"-"`
  3221  	// ForceSendFields is a list of field names (e.g. "ChildPolicyTags") to
  3222  	// unconditionally include in API requests. By default, fields with empty or
  3223  	// default values are omitted from API requests. See
  3224  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3225  	// details.
  3226  	ForceSendFields []string `json:"-"`
  3227  	// NullFields is a list of field names (e.g. "ChildPolicyTags") to include in
  3228  	// API requests with the JSON null value. By default, fields with empty values
  3229  	// are omitted from API requests. See
  3230  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3231  	NullFields []string `json:"-"`
  3232  }
  3233  
  3234  func (s *GoogleCloudDatacatalogV1beta1PolicyTag) MarshalJSON() ([]byte, error) {
  3235  	type NoMethod GoogleCloudDatacatalogV1beta1PolicyTag
  3236  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3237  }
  3238  
  3239  // GoogleCloudDatacatalogV1beta1RenameTagTemplateFieldEnumValueRequest: Request
  3240  // message for RenameTagTemplateFieldEnumValue.
  3241  type GoogleCloudDatacatalogV1beta1RenameTagTemplateFieldEnumValueRequest struct {
  3242  	// NewEnumValueDisplayName: Required. The new display name of the enum value.
  3243  	// For example, `my_new_enum_value`.
  3244  	NewEnumValueDisplayName string `json:"newEnumValueDisplayName,omitempty"`
  3245  	// ForceSendFields is a list of field names (e.g. "NewEnumValueDisplayName") to
  3246  	// unconditionally include in API requests. By default, fields with empty or
  3247  	// default values are omitted from API requests. See
  3248  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3249  	// details.
  3250  	ForceSendFields []string `json:"-"`
  3251  	// NullFields is a list of field names (e.g. "NewEnumValueDisplayName") to
  3252  	// include in API requests with the JSON null value. By default, fields with
  3253  	// empty values are omitted from API requests. See
  3254  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3255  	NullFields []string `json:"-"`
  3256  }
  3257  
  3258  func (s *GoogleCloudDatacatalogV1beta1RenameTagTemplateFieldEnumValueRequest) MarshalJSON() ([]byte, error) {
  3259  	type NoMethod GoogleCloudDatacatalogV1beta1RenameTagTemplateFieldEnumValueRequest
  3260  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3261  }
  3262  
  3263  // GoogleCloudDatacatalogV1beta1RenameTagTemplateFieldRequest: Request message
  3264  // for RenameTagTemplateField.
  3265  type GoogleCloudDatacatalogV1beta1RenameTagTemplateFieldRequest struct {
  3266  	// NewTagTemplateFieldId: Required. The new ID of this tag template field. For
  3267  	// example, `my_new_field`.
  3268  	NewTagTemplateFieldId string `json:"newTagTemplateFieldId,omitempty"`
  3269  	// ForceSendFields is a list of field names (e.g. "NewTagTemplateFieldId") to
  3270  	// unconditionally include in API requests. By default, fields with empty or
  3271  	// default values are omitted from API requests. See
  3272  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3273  	// details.
  3274  	ForceSendFields []string `json:"-"`
  3275  	// NullFields is a list of field names (e.g. "NewTagTemplateFieldId") to
  3276  	// include in API requests with the JSON null value. By default, fields with
  3277  	// empty values are omitted from API requests. See
  3278  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3279  	NullFields []string `json:"-"`
  3280  }
  3281  
  3282  func (s *GoogleCloudDatacatalogV1beta1RenameTagTemplateFieldRequest) MarshalJSON() ([]byte, error) {
  3283  	type NoMethod GoogleCloudDatacatalogV1beta1RenameTagTemplateFieldRequest
  3284  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3285  }
  3286  
  3287  // GoogleCloudDatacatalogV1beta1Schema: Represents a schema (e.g. BigQuery,
  3288  // GoogleSQL, Avro schema).
  3289  type GoogleCloudDatacatalogV1beta1Schema struct {
  3290  	// Columns: Required. Schema of columns. A maximum of 10,000 columns and
  3291  	// sub-columns can be specified.
  3292  	Columns []*GoogleCloudDatacatalogV1beta1ColumnSchema `json:"columns,omitempty"`
  3293  	// ForceSendFields is a list of field names (e.g. "Columns") to unconditionally
  3294  	// include in API requests. By default, fields with empty or default values are
  3295  	// omitted from API requests. See
  3296  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3297  	// details.
  3298  	ForceSendFields []string `json:"-"`
  3299  	// NullFields is a list of field names (e.g. "Columns") to include in API
  3300  	// requests with the JSON null value. By default, fields with empty values are
  3301  	// omitted from API requests. See
  3302  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3303  	NullFields []string `json:"-"`
  3304  }
  3305  
  3306  func (s *GoogleCloudDatacatalogV1beta1Schema) MarshalJSON() ([]byte, error) {
  3307  	type NoMethod GoogleCloudDatacatalogV1beta1Schema
  3308  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3309  }
  3310  
  3311  // GoogleCloudDatacatalogV1beta1SearchCatalogRequest: Request message for
  3312  // SearchCatalog.
  3313  type GoogleCloudDatacatalogV1beta1SearchCatalogRequest struct {
  3314  	// OrderBy: Specifies the ordering of results, currently supported
  3315  	// case-sensitive choices are: * `relevance`, only supports descending *
  3316  	// `last_modified_timestamp [asc|desc]`, defaults to descending if not
  3317  	// specified * `default` that can only be descending If not specified, defaults
  3318  	// to `relevance` descending.
  3319  	OrderBy string `json:"orderBy,omitempty"`
  3320  	// PageSize: Number of results in the search page. If <=0 then defaults to 10.
  3321  	// Max limit for page_size is 1000. Throws an invalid argument for page_size >
  3322  	// 1000.
  3323  	PageSize int64 `json:"pageSize,omitempty"`
  3324  	// PageToken: Optional. Pagination token returned in an earlier
  3325  	// SearchCatalogResponse.next_page_token, which indicates that this is a
  3326  	// continuation of a prior SearchCatalogRequest call, and that the system
  3327  	// should return the next page of data. If empty, the first page is returned.
  3328  	PageToken string `json:"pageToken,omitempty"`
  3329  	// Query: Optional. The query string in search query syntax. An empty query
  3330  	// string will result in all data assets (in the specified scope) that the user
  3331  	// has access to. Query strings can be simple as "x" or more qualified as: *
  3332  	// name:x * column:x * description:y Note: Query tokens need to have a minimum
  3333  	// of 3 characters for substring matching to work correctly. See Data Catalog
  3334  	// Search Syntax
  3335  	// (https://cloud.google.com/data-catalog/docs/how-to/search-reference) for
  3336  	// more information.
  3337  	Query string `json:"query,omitempty"`
  3338  	// Scope: Required. The scope of this search request. A `scope` that has empty
  3339  	// `include_org_ids`, `include_project_ids` AND false
  3340  	// `include_gcp_public_datasets` is considered invalid. Data Catalog will
  3341  	// return an error in such a case.
  3342  	Scope *GoogleCloudDatacatalogV1beta1SearchCatalogRequestScope `json:"scope,omitempty"`
  3343  	// ForceSendFields is a list of field names (e.g. "OrderBy") to unconditionally
  3344  	// include in API requests. By default, fields with empty or default values are
  3345  	// omitted from API requests. See
  3346  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3347  	// details.
  3348  	ForceSendFields []string `json:"-"`
  3349  	// NullFields is a list of field names (e.g. "OrderBy") to include in API
  3350  	// requests with the JSON null value. By default, fields with empty values are
  3351  	// omitted from API requests. See
  3352  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3353  	NullFields []string `json:"-"`
  3354  }
  3355  
  3356  func (s *GoogleCloudDatacatalogV1beta1SearchCatalogRequest) MarshalJSON() ([]byte, error) {
  3357  	type NoMethod GoogleCloudDatacatalogV1beta1SearchCatalogRequest
  3358  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3359  }
  3360  
  3361  // GoogleCloudDatacatalogV1beta1SearchCatalogRequestScope: The criteria that
  3362  // select the subspace used for query matching.
  3363  type GoogleCloudDatacatalogV1beta1SearchCatalogRequestScope struct {
  3364  	// IncludeGcpPublicDatasets: If `true`, include Google Cloud public datasets in
  3365  	// the search results. Info on Google Cloud public datasets is available at
  3366  	// https://cloud.google.com/public-datasets/. By default, Google Cloud public
  3367  	// datasets are excluded.
  3368  	IncludeGcpPublicDatasets bool `json:"includeGcpPublicDatasets,omitempty"`
  3369  	// IncludeOrgIds: The list of organization IDs to search within. To find your
  3370  	// organization ID, follow instructions in
  3371  	// https://cloud.google.com/resource-manager/docs/creating-managing-organization.
  3372  	IncludeOrgIds []string `json:"includeOrgIds,omitempty"`
  3373  	// IncludeProjectIds: The list of project IDs to search within. To learn more
  3374  	// about the distinction between project names/IDs/numbers, go to
  3375  	// https://cloud.google.com/docs/overview/#projects.
  3376  	IncludeProjectIds []string `json:"includeProjectIds,omitempty"`
  3377  	// RestrictedLocations: Optional. The list of locations to search within. 1. If
  3378  	// empty, search will be performed in all locations; 2. If any of the locations
  3379  	// are NOT in the valid locations list, error will be returned; 3. Otherwise,
  3380  	// search only the given locations for matching results. Typical usage is to
  3381  	// leave this field empty. When a location is unreachable as returned in the
  3382  	// `SearchCatalogResponse.unreachable` field, users can repeat the search
  3383  	// request with this parameter set to get additional information on the error.
  3384  	// Valid locations: * asia-east1 * asia-east2 * asia-northeast1 *
  3385  	// asia-northeast2 * asia-northeast3 * asia-south1 * asia-southeast1 *
  3386  	// australia-southeast1 * eu * europe-north1 * europe-west1 * europe-west2 *
  3387  	// europe-west3 * europe-west4 * europe-west6 * global *
  3388  	// northamerica-northeast1 * southamerica-east1 * us * us-central1 * us-east1 *
  3389  	// us-east4 * us-west1 * us-west2
  3390  	RestrictedLocations []string `json:"restrictedLocations,omitempty"`
  3391  	// ForceSendFields is a list of field names (e.g. "IncludeGcpPublicDatasets")
  3392  	// to unconditionally include in API requests. By default, fields with empty or
  3393  	// default values are omitted from API requests. See
  3394  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3395  	// details.
  3396  	ForceSendFields []string `json:"-"`
  3397  	// NullFields is a list of field names (e.g. "IncludeGcpPublicDatasets") to
  3398  	// include in API requests with the JSON null value. By default, fields with
  3399  	// empty values are omitted from API requests. See
  3400  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3401  	NullFields []string `json:"-"`
  3402  }
  3403  
  3404  func (s *GoogleCloudDatacatalogV1beta1SearchCatalogRequestScope) MarshalJSON() ([]byte, error) {
  3405  	type NoMethod GoogleCloudDatacatalogV1beta1SearchCatalogRequestScope
  3406  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3407  }
  3408  
  3409  // GoogleCloudDatacatalogV1beta1SearchCatalogResponse: Response message for
  3410  // SearchCatalog.
  3411  type GoogleCloudDatacatalogV1beta1SearchCatalogResponse struct {
  3412  	// NextPageToken: The token that can be used to retrieve the next page of
  3413  	// results.
  3414  	NextPageToken string `json:"nextPageToken,omitempty"`
  3415  	// Results: Search results.
  3416  	Results []*GoogleCloudDatacatalogV1beta1SearchCatalogResult `json:"results,omitempty"`
  3417  	// TotalSize: The approximate total number of entries matched by the query.
  3418  	TotalSize int64 `json:"totalSize,omitempty"`
  3419  	// Unreachable: Unreachable locations. Search result does not include data from
  3420  	// those locations. Users can get additional information on the error by
  3421  	// repeating the search request with a more restrictive parameter -- setting
  3422  	// the value for `SearchDataCatalogRequest.scope.restricted_locations`.
  3423  	Unreachable []string `json:"unreachable,omitempty"`
  3424  
  3425  	// ServerResponse contains the HTTP response code and headers from the server.
  3426  	googleapi.ServerResponse `json:"-"`
  3427  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  3428  	// unconditionally include in API requests. By default, fields with empty or
  3429  	// default values are omitted from API requests. See
  3430  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3431  	// details.
  3432  	ForceSendFields []string `json:"-"`
  3433  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  3434  	// requests with the JSON null value. By default, fields with empty values are
  3435  	// omitted from API requests. See
  3436  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3437  	NullFields []string `json:"-"`
  3438  }
  3439  
  3440  func (s *GoogleCloudDatacatalogV1beta1SearchCatalogResponse) MarshalJSON() ([]byte, error) {
  3441  	type NoMethod GoogleCloudDatacatalogV1beta1SearchCatalogResponse
  3442  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3443  }
  3444  
  3445  // GoogleCloudDatacatalogV1beta1SearchCatalogResult: A result that appears in
  3446  // the response of a search request. Each result captures details of one entry
  3447  // that matches the search.
  3448  type GoogleCloudDatacatalogV1beta1SearchCatalogResult struct {
  3449  	// LinkedResource: The full name of the cloud resource the entry belongs to.
  3450  	// See: https://cloud.google.com/apis/design/resource_names#full_resource_name.
  3451  	// Example: *
  3452  	// `//bigquery.googleapis.com/projects/projectId/datasets/datasetId/tables/table
  3453  	// Id`
  3454  	LinkedResource string `json:"linkedResource,omitempty"`
  3455  	// ModifyTime: Last-modified timestamp of the entry from the managing system.
  3456  	ModifyTime string `json:"modifyTime,omitempty"`
  3457  	// RelativeResourceName: The relative resource name of the resource in URL
  3458  	// format. Examples: *
  3459  	// `projects/{project_id}/locations/{location_id}/entryGroups/{entry_group_id}/e
  3460  	// ntries/{entry_id}` * `projects/{project_id}/tagTemplates/{tag_template_id}`
  3461  	RelativeResourceName string `json:"relativeResourceName,omitempty"`
  3462  	// SearchResultSubtype: Sub-type of the search result. This is a dot-delimited
  3463  	// description of the resource's full type, and is the same as the value
  3464  	// callers would provide in the "type" search facet. Examples: `entry.table`,
  3465  	// `entry.dataStream`, `tagTemplate`.
  3466  	SearchResultSubtype string `json:"searchResultSubtype,omitempty"`
  3467  	// SearchResultType: Type of the search result. This field can be used to
  3468  	// determine which Get method to call to fetch the full resource.
  3469  	//
  3470  	// Possible values:
  3471  	//   "SEARCH_RESULT_TYPE_UNSPECIFIED" - Default unknown type.
  3472  	//   "ENTRY" - An Entry.
  3473  	//   "TAG_TEMPLATE" - A TagTemplate.
  3474  	//   "ENTRY_GROUP" - An EntryGroup.
  3475  	SearchResultType string `json:"searchResultType,omitempty"`
  3476  	// ForceSendFields is a list of field names (e.g. "LinkedResource") to
  3477  	// unconditionally include in API requests. By default, fields with empty or
  3478  	// default values are omitted from API requests. See
  3479  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3480  	// details.
  3481  	ForceSendFields []string `json:"-"`
  3482  	// NullFields is a list of field names (e.g. "LinkedResource") to include in
  3483  	// API requests with the JSON null value. By default, fields with empty values
  3484  	// are omitted from API requests. See
  3485  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3486  	NullFields []string `json:"-"`
  3487  }
  3488  
  3489  func (s *GoogleCloudDatacatalogV1beta1SearchCatalogResult) MarshalJSON() ([]byte, error) {
  3490  	type NoMethod GoogleCloudDatacatalogV1beta1SearchCatalogResult
  3491  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3492  }
  3493  
  3494  // GoogleCloudDatacatalogV1beta1SerializedPolicyTag: Message representing one
  3495  // policy tag when exported as a nested proto.
  3496  type GoogleCloudDatacatalogV1beta1SerializedPolicyTag struct {
  3497  	// ChildPolicyTags: Children of the policy tag if any.
  3498  	ChildPolicyTags []*GoogleCloudDatacatalogV1beta1SerializedPolicyTag `json:"childPolicyTags,omitempty"`
  3499  	// Description: Description of the serialized policy tag. The length of the
  3500  	// description is limited to 2000 bytes when encoded in UTF-8. If not set,
  3501  	// defaults to an empty description.
  3502  	Description string `json:"description,omitempty"`
  3503  	// DisplayName: Required. Display name of the policy tag. Max 200 bytes when
  3504  	// encoded in UTF-8.
  3505  	DisplayName string `json:"displayName,omitempty"`
  3506  	// PolicyTag: Resource name of the policy tag. This field will be ignored when
  3507  	// calling ImportTaxonomies.
  3508  	PolicyTag string `json:"policyTag,omitempty"`
  3509  	// ForceSendFields is a list of field names (e.g. "ChildPolicyTags") to
  3510  	// unconditionally include in API requests. By default, fields with empty or
  3511  	// default values are omitted from API requests. See
  3512  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3513  	// details.
  3514  	ForceSendFields []string `json:"-"`
  3515  	// NullFields is a list of field names (e.g. "ChildPolicyTags") to include in
  3516  	// API requests with the JSON null value. By default, fields with empty values
  3517  	// are omitted from API requests. See
  3518  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3519  	NullFields []string `json:"-"`
  3520  }
  3521  
  3522  func (s *GoogleCloudDatacatalogV1beta1SerializedPolicyTag) MarshalJSON() ([]byte, error) {
  3523  	type NoMethod GoogleCloudDatacatalogV1beta1SerializedPolicyTag
  3524  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3525  }
  3526  
  3527  // GoogleCloudDatacatalogV1beta1SerializedTaxonomy: Message capturing a
  3528  // taxonomy and its policy tag hierarchy as a nested proto. Used for taxonomy
  3529  // import/export and mutation.
  3530  type GoogleCloudDatacatalogV1beta1SerializedTaxonomy struct {
  3531  	// ActivatedPolicyTypes: A list of policy types that are activated for a
  3532  	// taxonomy.
  3533  	//
  3534  	// Possible values:
  3535  	//   "POLICY_TYPE_UNSPECIFIED" - Unspecified policy type.
  3536  	//   "FINE_GRAINED_ACCESS_CONTROL" - Fine grained access control policy, which
  3537  	// enables access control on tagged resources.
  3538  	ActivatedPolicyTypes []string `json:"activatedPolicyTypes,omitempty"`
  3539  	// Description: Description of the serialized taxonomy. The length of the
  3540  	// description is limited to 2000 bytes when encoded in UTF-8. If not set,
  3541  	// defaults to an empty description.
  3542  	Description string `json:"description,omitempty"`
  3543  	// DisplayName: Required. Display name of the taxonomy. Max 200 bytes when
  3544  	// encoded in UTF-8.
  3545  	DisplayName string `json:"displayName,omitempty"`
  3546  	// PolicyTags: Top level policy tags associated with the taxonomy if any.
  3547  	PolicyTags []*GoogleCloudDatacatalogV1beta1SerializedPolicyTag `json:"policyTags,omitempty"`
  3548  	// ForceSendFields is a list of field names (e.g. "ActivatedPolicyTypes") to
  3549  	// unconditionally include in API requests. By default, fields with empty or
  3550  	// default values are omitted from API requests. See
  3551  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3552  	// details.
  3553  	ForceSendFields []string `json:"-"`
  3554  	// NullFields is a list of field names (e.g. "ActivatedPolicyTypes") to include
  3555  	// in API requests with the JSON null value. By default, fields with empty
  3556  	// values are omitted from API requests. See
  3557  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3558  	NullFields []string `json:"-"`
  3559  }
  3560  
  3561  func (s *GoogleCloudDatacatalogV1beta1SerializedTaxonomy) MarshalJSON() ([]byte, error) {
  3562  	type NoMethod GoogleCloudDatacatalogV1beta1SerializedTaxonomy
  3563  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3564  }
  3565  
  3566  // GoogleCloudDatacatalogV1beta1SystemTimestamps: Timestamps about this
  3567  // resource according to a particular system.
  3568  type GoogleCloudDatacatalogV1beta1SystemTimestamps struct {
  3569  	// CreateTime: The creation time of the resource within the given system.
  3570  	CreateTime string `json:"createTime,omitempty"`
  3571  	// ExpireTime: Output only. The expiration time of the resource within the
  3572  	// given system. Currently only apllicable to BigQuery resources.
  3573  	ExpireTime string `json:"expireTime,omitempty"`
  3574  	// UpdateTime: The last-modified time of the resource within the given system.
  3575  	UpdateTime string `json:"updateTime,omitempty"`
  3576  	// ForceSendFields is a list of field names (e.g. "CreateTime") to
  3577  	// unconditionally include in API requests. By default, fields with empty or
  3578  	// default values are omitted from API requests. See
  3579  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3580  	// details.
  3581  	ForceSendFields []string `json:"-"`
  3582  	// NullFields is a list of field names (e.g. "CreateTime") to include in API
  3583  	// requests with the JSON null value. By default, fields with empty values are
  3584  	// omitted from API requests. See
  3585  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3586  	NullFields []string `json:"-"`
  3587  }
  3588  
  3589  func (s *GoogleCloudDatacatalogV1beta1SystemTimestamps) MarshalJSON() ([]byte, error) {
  3590  	type NoMethod GoogleCloudDatacatalogV1beta1SystemTimestamps
  3591  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3592  }
  3593  
  3594  // GoogleCloudDatacatalogV1beta1TableSpec: Normal BigQuery table spec.
  3595  type GoogleCloudDatacatalogV1beta1TableSpec struct {
  3596  	// GroupedEntry: Output only. If the table is a dated shard, i.e., with name
  3597  	// pattern `[prefix]YYYYMMDD`, `grouped_entry` is the Data Catalog resource
  3598  	// name of the date sharded grouped entry, for example,
  3599  	// `projects/{project_id}/locations/{location}/entrygroups/{entry_group_id}/entr
  3600  	// ies/{entry_id}`. Otherwise, `grouped_entry` is empty.
  3601  	GroupedEntry string `json:"groupedEntry,omitempty"`
  3602  	// ForceSendFields is a list of field names (e.g. "GroupedEntry") to
  3603  	// unconditionally include in API requests. By default, fields with empty or
  3604  	// default values are omitted from API requests. See
  3605  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3606  	// details.
  3607  	ForceSendFields []string `json:"-"`
  3608  	// NullFields is a list of field names (e.g. "GroupedEntry") to include in API
  3609  	// requests with the JSON null value. By default, fields with empty values are
  3610  	// omitted from API requests. See
  3611  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3612  	NullFields []string `json:"-"`
  3613  }
  3614  
  3615  func (s *GoogleCloudDatacatalogV1beta1TableSpec) MarshalJSON() ([]byte, error) {
  3616  	type NoMethod GoogleCloudDatacatalogV1beta1TableSpec
  3617  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3618  }
  3619  
  3620  // GoogleCloudDatacatalogV1beta1Tag: Tags are used to attach custom metadata to
  3621  // Data Catalog resources. Tags conform to the specifications within their tag
  3622  // template. See Data Catalog IAM
  3623  // (https://cloud.google.com/data-catalog/docs/concepts/iam) for information on
  3624  // the permissions needed to create or view tags.
  3625  type GoogleCloudDatacatalogV1beta1Tag struct {
  3626  	// Column: Resources like Entry can have schemas associated with them. This
  3627  	// scope allows users to attach tags to an individual column based on that
  3628  	// schema. For attaching a tag to a nested column, use `.` to separate the
  3629  	// column names. Example: * `outer_column.inner_column`
  3630  	Column string `json:"column,omitempty"`
  3631  	// Fields: Required. This maps the ID of a tag field to the value of and
  3632  	// additional information about that field. Valid field IDs are defined by the
  3633  	// tag's template. A tag must have at least 1 field and at most 500 fields.
  3634  	Fields map[string]GoogleCloudDatacatalogV1beta1TagField `json:"fields,omitempty"`
  3635  	// Name: Identifier. The resource name of the tag in URL format. Example: *
  3636  	// projects/{project_id}/locations/{location}/entrygroups/{entry_group_id}/entri
  3637  	// es/{entry_id}/tags/{tag_id} where `tag_id` is a system-generated identifier.
  3638  	// Note that this Tag may not actually be stored in the location in this name.
  3639  	Name string `json:"name,omitempty"`
  3640  	// Template: Required. The resource name of the tag template that this tag
  3641  	// uses. Example: *
  3642  	// projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}
  3643  	// This field cannot be modified after creation.
  3644  	Template string `json:"template,omitempty"`
  3645  	// TemplateDisplayName: Output only. The display name of the tag template.
  3646  	TemplateDisplayName string `json:"templateDisplayName,omitempty"`
  3647  
  3648  	// ServerResponse contains the HTTP response code and headers from the server.
  3649  	googleapi.ServerResponse `json:"-"`
  3650  	// ForceSendFields is a list of field names (e.g. "Column") to unconditionally
  3651  	// include in API requests. By default, fields with empty or default values are
  3652  	// omitted from API requests. See
  3653  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3654  	// details.
  3655  	ForceSendFields []string `json:"-"`
  3656  	// NullFields is a list of field names (e.g. "Column") to include in API
  3657  	// requests with the JSON null value. By default, fields with empty values are
  3658  	// omitted from API requests. See
  3659  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3660  	NullFields []string `json:"-"`
  3661  }
  3662  
  3663  func (s *GoogleCloudDatacatalogV1beta1Tag) MarshalJSON() ([]byte, error) {
  3664  	type NoMethod GoogleCloudDatacatalogV1beta1Tag
  3665  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3666  }
  3667  
  3668  // GoogleCloudDatacatalogV1beta1TagField: Contains the value and supporting
  3669  // information for a field within a Tag.
  3670  type GoogleCloudDatacatalogV1beta1TagField struct {
  3671  	// BoolValue: Holds the value for a tag field with boolean type.
  3672  	BoolValue bool `json:"boolValue,omitempty"`
  3673  	// DisplayName: Output only. The display name of this field.
  3674  	DisplayName string `json:"displayName,omitempty"`
  3675  	// DoubleValue: Holds the value for a tag field with double type.
  3676  	DoubleValue float64 `json:"doubleValue,omitempty"`
  3677  	// EnumValue: Holds the value for a tag field with enum type. This value must
  3678  	// be one of the allowed values in the definition of this enum.
  3679  	EnumValue *GoogleCloudDatacatalogV1beta1TagFieldEnumValue `json:"enumValue,omitempty"`
  3680  	// Order: Output only. The order of this field with respect to other fields in
  3681  	// this tag. It can be set in Tag. For example, a higher value can indicate a
  3682  	// more important field. The value can be negative. Multiple fields can have
  3683  	// the same order, and field orders within a tag do not have to be sequential.
  3684  	Order int64 `json:"order,omitempty"`
  3685  	// StringValue: Holds the value for a tag field with string type.
  3686  	StringValue string `json:"stringValue,omitempty"`
  3687  	// TimestampValue: Holds the value for a tag field with timestamp type.
  3688  	TimestampValue string `json:"timestampValue,omitempty"`
  3689  	// ForceSendFields is a list of field names (e.g. "BoolValue") to
  3690  	// unconditionally include in API requests. By default, fields with empty or
  3691  	// default values are omitted from API requests. See
  3692  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3693  	// details.
  3694  	ForceSendFields []string `json:"-"`
  3695  	// NullFields is a list of field names (e.g. "BoolValue") to include in API
  3696  	// requests with the JSON null value. By default, fields with empty values are
  3697  	// omitted from API requests. See
  3698  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3699  	NullFields []string `json:"-"`
  3700  }
  3701  
  3702  func (s *GoogleCloudDatacatalogV1beta1TagField) MarshalJSON() ([]byte, error) {
  3703  	type NoMethod GoogleCloudDatacatalogV1beta1TagField
  3704  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3705  }
  3706  
  3707  func (s *GoogleCloudDatacatalogV1beta1TagField) UnmarshalJSON(data []byte) error {
  3708  	type NoMethod GoogleCloudDatacatalogV1beta1TagField
  3709  	var s1 struct {
  3710  		DoubleValue gensupport.JSONFloat64 `json:"doubleValue"`
  3711  		*NoMethod
  3712  	}
  3713  	s1.NoMethod = (*NoMethod)(s)
  3714  	if err := json.Unmarshal(data, &s1); err != nil {
  3715  		return err
  3716  	}
  3717  	s.DoubleValue = float64(s1.DoubleValue)
  3718  	return nil
  3719  }
  3720  
  3721  // GoogleCloudDatacatalogV1beta1TagFieldEnumValue: Holds an enum value.
  3722  type GoogleCloudDatacatalogV1beta1TagFieldEnumValue struct {
  3723  	// DisplayName: The display name of the enum value.
  3724  	DisplayName string `json:"displayName,omitempty"`
  3725  	// ForceSendFields is a list of field names (e.g. "DisplayName") to
  3726  	// unconditionally include in API requests. By default, fields with empty or
  3727  	// default values are omitted from API requests. See
  3728  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3729  	// details.
  3730  	ForceSendFields []string `json:"-"`
  3731  	// NullFields is a list of field names (e.g. "DisplayName") to include in API
  3732  	// requests with the JSON null value. By default, fields with empty values are
  3733  	// omitted from API requests. See
  3734  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3735  	NullFields []string `json:"-"`
  3736  }
  3737  
  3738  func (s *GoogleCloudDatacatalogV1beta1TagFieldEnumValue) MarshalJSON() ([]byte, error) {
  3739  	type NoMethod GoogleCloudDatacatalogV1beta1TagFieldEnumValue
  3740  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3741  }
  3742  
  3743  // GoogleCloudDatacatalogV1beta1TagTemplate: A tag template defines a tag,
  3744  // which can have one or more typed fields. The template is used to create and
  3745  // attach the tag to Google Cloud resources. Tag template roles
  3746  // (https://cloud.google.com/iam/docs/understanding-roles#data-catalog-roles)
  3747  // provide permissions to create, edit, and use the template. See, for example,
  3748  // the TagTemplate User
  3749  // (https://cloud.google.com/data-catalog/docs/how-to/template-user) role,
  3750  // which includes permission to use the tag template to tag resources.
  3751  type GoogleCloudDatacatalogV1beta1TagTemplate struct {
  3752  	// DataplexTransferStatus: Output only. Transfer status of the TagTemplate
  3753  	//
  3754  	// Possible values:
  3755  	//   "DATAPLEX_TRANSFER_STATUS_UNSPECIFIED" - Default value. TagTemplate and
  3756  	// its tags are only visible and editable in DataCatalog.
  3757  	//   "MIGRATED" - TagTemplate and its tags are auto-copied to Dataplex service.
  3758  	// Visible in both services. Editable in DataCatalog, read-only in Dataplex.
  3759  	DataplexTransferStatus string `json:"dataplexTransferStatus,omitempty"`
  3760  	// DisplayName: The display name for this template. Defaults to an empty
  3761  	// string.
  3762  	DisplayName string `json:"displayName,omitempty"`
  3763  	// Fields: Required. Map of tag template field IDs to the settings for the
  3764  	// field. This map is an exhaustive list of the allowed fields. This map must
  3765  	// contain at least one field and at most 500 fields. The keys to this map are
  3766  	// tag template field IDs. Field IDs can contain letters (both uppercase and
  3767  	// lowercase), numbers (0-9) and underscores (_). Field IDs must be at least 1
  3768  	// character long and at most 64 characters long. Field IDs must start with a
  3769  	// letter or underscore.
  3770  	Fields map[string]GoogleCloudDatacatalogV1beta1TagTemplateField `json:"fields,omitempty"`
  3771  	// Name: Identifier. The resource name of the tag template in URL format.
  3772  	// Example: *
  3773  	// projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}
  3774  	// Note that this TagTemplate and its child resources may not actually be
  3775  	// stored in the location in this name.
  3776  	Name string `json:"name,omitempty"`
  3777  
  3778  	// ServerResponse contains the HTTP response code and headers from the server.
  3779  	googleapi.ServerResponse `json:"-"`
  3780  	// ForceSendFields is a list of field names (e.g. "DataplexTransferStatus") to
  3781  	// unconditionally include in API requests. By default, fields with empty or
  3782  	// default values are omitted from API requests. See
  3783  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3784  	// details.
  3785  	ForceSendFields []string `json:"-"`
  3786  	// NullFields is a list of field names (e.g. "DataplexTransferStatus") to
  3787  	// include in API requests with the JSON null value. By default, fields with
  3788  	// empty values are omitted from API requests. See
  3789  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3790  	NullFields []string `json:"-"`
  3791  }
  3792  
  3793  func (s *GoogleCloudDatacatalogV1beta1TagTemplate) MarshalJSON() ([]byte, error) {
  3794  	type NoMethod GoogleCloudDatacatalogV1beta1TagTemplate
  3795  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3796  }
  3797  
  3798  // GoogleCloudDatacatalogV1beta1TagTemplateField: The template for an
  3799  // individual field within a tag template.
  3800  type GoogleCloudDatacatalogV1beta1TagTemplateField struct {
  3801  	// Description: The description for this field. Defaults to an empty string.
  3802  	Description string `json:"description,omitempty"`
  3803  	// DisplayName: The display name for this field. Defaults to an empty string.
  3804  	DisplayName string `json:"displayName,omitempty"`
  3805  	// IsRequired: Whether this is a required field. Defaults to false.
  3806  	IsRequired bool `json:"isRequired,omitempty"`
  3807  	// Name: Output only. Identifier. The resource name of the tag template field
  3808  	// in URL format. Example: *
  3809  	// projects/{project_id}/locations/{location}/tagTemplates/{tag_template}/fields
  3810  	// /{field} Note that this TagTemplateField may not actually be stored in the
  3811  	// location in this name.
  3812  	Name string `json:"name,omitempty"`
  3813  	// Order: The order of this field with respect to other fields in this tag
  3814  	// template. A higher value indicates a more important field. The value can be
  3815  	// negative. Multiple fields can have the same order, and field orders within a
  3816  	// tag do not have to be sequential.
  3817  	Order int64 `json:"order,omitempty"`
  3818  	// Type: Required. The type of value this tag field can contain.
  3819  	Type *GoogleCloudDatacatalogV1beta1FieldType `json:"type,omitempty"`
  3820  
  3821  	// ServerResponse contains the HTTP response code and headers from the server.
  3822  	googleapi.ServerResponse `json:"-"`
  3823  	// ForceSendFields is a list of field names (e.g. "Description") to
  3824  	// unconditionally include in API requests. By default, fields with empty or
  3825  	// default values are omitted from API requests. See
  3826  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3827  	// details.
  3828  	ForceSendFields []string `json:"-"`
  3829  	// NullFields is a list of field names (e.g. "Description") to include in API
  3830  	// requests with the JSON null value. By default, fields with empty values are
  3831  	// omitted from API requests. See
  3832  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3833  	NullFields []string `json:"-"`
  3834  }
  3835  
  3836  func (s *GoogleCloudDatacatalogV1beta1TagTemplateField) MarshalJSON() ([]byte, error) {
  3837  	type NoMethod GoogleCloudDatacatalogV1beta1TagTemplateField
  3838  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3839  }
  3840  
  3841  // GoogleCloudDatacatalogV1beta1Taxonomy: A taxonomy is a collection of policy
  3842  // tags that classify data along a common axis. For instance a data
  3843  // *sensitivity* taxonomy could contain policy tags denoting PII such as age,
  3844  // zipcode, and SSN. A data *origin* taxonomy could contain policy tags to
  3845  // distinguish user data, employee data, partner data, public data.
  3846  type GoogleCloudDatacatalogV1beta1Taxonomy struct {
  3847  	// ActivatedPolicyTypes: Optional. A list of policy types that are activated
  3848  	// for this taxonomy. If not set, defaults to an empty list.
  3849  	//
  3850  	// Possible values:
  3851  	//   "POLICY_TYPE_UNSPECIFIED" - Unspecified policy type.
  3852  	//   "FINE_GRAINED_ACCESS_CONTROL" - Fine grained access control policy, which
  3853  	// enables access control on tagged resources.
  3854  	ActivatedPolicyTypes []string `json:"activatedPolicyTypes,omitempty"`
  3855  	// Description: Optional. Description of this taxonomy. It must: contain only
  3856  	// unicode characters, tabs, newlines, carriage returns and page breaks; and be
  3857  	// at most 2000 bytes long when encoded in UTF-8. If not set, defaults to an
  3858  	// empty description.
  3859  	Description string `json:"description,omitempty"`
  3860  	// DisplayName: Required. User defined name of this taxonomy. It must: contain
  3861  	// only unicode letters, numbers, underscores, dashes and spaces; not start or
  3862  	// end with spaces; and be at most 200 bytes long when encoded in UTF-8. The
  3863  	// taxonomy display name must be unique within an organization.
  3864  	DisplayName string `json:"displayName,omitempty"`
  3865  	// Name: Identifier. Resource name of this taxonomy, whose format is:
  3866  	// "projects/{project_number}/locations/{location_id}/taxonomies/{id}".
  3867  	Name string `json:"name,omitempty"`
  3868  	// PolicyTagCount: Output only. Number of policy tags contained in this
  3869  	// taxonomy.
  3870  	PolicyTagCount int64 `json:"policyTagCount,omitempty"`
  3871  	// Service: Output only. Identity of the service which owns the Taxonomy. This
  3872  	// field is only populated when the taxonomy is created by a Google Cloud
  3873  	// service. Currently only 'DATAPLEX' is supported.
  3874  	Service *GoogleCloudDatacatalogV1beta1TaxonomyService `json:"service,omitempty"`
  3875  	// TaxonomyTimestamps: Output only. Timestamps about this taxonomy. Only
  3876  	// create_time and update_time are used.
  3877  	TaxonomyTimestamps *GoogleCloudDatacatalogV1beta1SystemTimestamps `json:"taxonomyTimestamps,omitempty"`
  3878  
  3879  	// ServerResponse contains the HTTP response code and headers from the server.
  3880  	googleapi.ServerResponse `json:"-"`
  3881  	// ForceSendFields is a list of field names (e.g. "ActivatedPolicyTypes") to
  3882  	// unconditionally include in API requests. By default, fields with empty or
  3883  	// default values are omitted from API requests. See
  3884  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3885  	// details.
  3886  	ForceSendFields []string `json:"-"`
  3887  	// NullFields is a list of field names (e.g. "ActivatedPolicyTypes") to include
  3888  	// in API requests with the JSON null value. By default, fields with empty
  3889  	// values are omitted from API requests. See
  3890  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3891  	NullFields []string `json:"-"`
  3892  }
  3893  
  3894  func (s *GoogleCloudDatacatalogV1beta1Taxonomy) MarshalJSON() ([]byte, error) {
  3895  	type NoMethod GoogleCloudDatacatalogV1beta1Taxonomy
  3896  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3897  }
  3898  
  3899  // GoogleCloudDatacatalogV1beta1TaxonomyService: The source system of the
  3900  // Taxonomy.
  3901  type GoogleCloudDatacatalogV1beta1TaxonomyService struct {
  3902  	// Identity: The service agent for the service.
  3903  	Identity string `json:"identity,omitempty"`
  3904  	// Name: The Google Cloud service name.
  3905  	//
  3906  	// Possible values:
  3907  	//   "MANAGING_SYSTEM_UNSPECIFIED" - Default value
  3908  	//   "MANAGING_SYSTEM_DATAPLEX" - Dataplex.
  3909  	//   "MANAGING_SYSTEM_OTHER" - Other
  3910  	Name string `json:"name,omitempty"`
  3911  	// ForceSendFields is a list of field names (e.g. "Identity") to
  3912  	// unconditionally include in API requests. By default, fields with empty or
  3913  	// default values are omitted from API requests. See
  3914  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3915  	// details.
  3916  	ForceSendFields []string `json:"-"`
  3917  	// NullFields is a list of field names (e.g. "Identity") to include in API
  3918  	// requests with the JSON null value. By default, fields with empty values are
  3919  	// omitted from API requests. See
  3920  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3921  	NullFields []string `json:"-"`
  3922  }
  3923  
  3924  func (s *GoogleCloudDatacatalogV1beta1TaxonomyService) MarshalJSON() ([]byte, error) {
  3925  	type NoMethod GoogleCloudDatacatalogV1beta1TaxonomyService
  3926  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3927  }
  3928  
  3929  // GoogleCloudDatacatalogV1beta1UsageSignal: The set of all usage signals that
  3930  // we store in Data Catalog.
  3931  type GoogleCloudDatacatalogV1beta1UsageSignal struct {
  3932  	// UpdateTime: The timestamp of the end of the usage statistics duration.
  3933  	UpdateTime string `json:"updateTime,omitempty"`
  3934  	// UsageWithinTimeRange: Usage statistics over each of the pre-defined time
  3935  	// ranges, supported strings for time ranges are {"24H", "7D", "30D"}.
  3936  	UsageWithinTimeRange map[string]GoogleCloudDatacatalogV1beta1UsageStats `json:"usageWithinTimeRange,omitempty"`
  3937  	// ForceSendFields is a list of field names (e.g. "UpdateTime") to
  3938  	// unconditionally include in API requests. By default, fields with empty or
  3939  	// default values are omitted from API requests. See
  3940  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3941  	// details.
  3942  	ForceSendFields []string `json:"-"`
  3943  	// NullFields is a list of field names (e.g. "UpdateTime") to include in API
  3944  	// requests with the JSON null value. By default, fields with empty values are
  3945  	// omitted from API requests. See
  3946  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3947  	NullFields []string `json:"-"`
  3948  }
  3949  
  3950  func (s *GoogleCloudDatacatalogV1beta1UsageSignal) MarshalJSON() ([]byte, error) {
  3951  	type NoMethod GoogleCloudDatacatalogV1beta1UsageSignal
  3952  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3953  }
  3954  
  3955  // GoogleCloudDatacatalogV1beta1UsageStats: Detailed counts on the entry's
  3956  // usage. Caveats: - Only BigQuery tables have usage stats - The usage stats
  3957  // only include BigQuery query jobs - The usage stats might be underestimated,
  3958  // e.g. wildcard table references are not yet counted in usage computation
  3959  // https://cloud.google.com/bigquery/docs/querying-wildcard-tables
  3960  type GoogleCloudDatacatalogV1beta1UsageStats struct {
  3961  	// TotalCancellations: The number of times that the underlying entry was
  3962  	// attempted to be used but was cancelled by the user.
  3963  	TotalCancellations float64 `json:"totalCancellations,omitempty"`
  3964  	// TotalCompletions: The number of times that the underlying entry was
  3965  	// successfully used.
  3966  	TotalCompletions float64 `json:"totalCompletions,omitempty"`
  3967  	// TotalExecutionTimeForCompletionsMillis: Total time spent (in milliseconds)
  3968  	// during uses the resulted in completions.
  3969  	TotalExecutionTimeForCompletionsMillis float64 `json:"totalExecutionTimeForCompletionsMillis,omitempty"`
  3970  	// TotalFailures: The number of times that the underlying entry was attempted
  3971  	// to be used but failed.
  3972  	TotalFailures float64 `json:"totalFailures,omitempty"`
  3973  	// ForceSendFields is a list of field names (e.g. "TotalCancellations") to
  3974  	// unconditionally include in API requests. By default, fields with empty or
  3975  	// default values are omitted from API requests. See
  3976  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3977  	// details.
  3978  	ForceSendFields []string `json:"-"`
  3979  	// NullFields is a list of field names (e.g. "TotalCancellations") to include
  3980  	// in API requests with the JSON null value. By default, fields with empty
  3981  	// values are omitted from API requests. See
  3982  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3983  	NullFields []string `json:"-"`
  3984  }
  3985  
  3986  func (s *GoogleCloudDatacatalogV1beta1UsageStats) MarshalJSON() ([]byte, error) {
  3987  	type NoMethod GoogleCloudDatacatalogV1beta1UsageStats
  3988  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3989  }
  3990  
  3991  func (s *GoogleCloudDatacatalogV1beta1UsageStats) UnmarshalJSON(data []byte) error {
  3992  	type NoMethod GoogleCloudDatacatalogV1beta1UsageStats
  3993  	var s1 struct {
  3994  		TotalCancellations                     gensupport.JSONFloat64 `json:"totalCancellations"`
  3995  		TotalCompletions                       gensupport.JSONFloat64 `json:"totalCompletions"`
  3996  		TotalExecutionTimeForCompletionsMillis gensupport.JSONFloat64 `json:"totalExecutionTimeForCompletionsMillis"`
  3997  		TotalFailures                          gensupport.JSONFloat64 `json:"totalFailures"`
  3998  		*NoMethod
  3999  	}
  4000  	s1.NoMethod = (*NoMethod)(s)
  4001  	if err := json.Unmarshal(data, &s1); err != nil {
  4002  		return err
  4003  	}
  4004  	s.TotalCancellations = float64(s1.TotalCancellations)
  4005  	s.TotalCompletions = float64(s1.TotalCompletions)
  4006  	s.TotalExecutionTimeForCompletionsMillis = float64(s1.TotalExecutionTimeForCompletionsMillis)
  4007  	s.TotalFailures = float64(s1.TotalFailures)
  4008  	return nil
  4009  }
  4010  
  4011  // GoogleCloudDatacatalogV1beta1ViewSpec: Table view specification.
  4012  type GoogleCloudDatacatalogV1beta1ViewSpec struct {
  4013  	// ViewQuery: Output only. The query that defines the table view.
  4014  	ViewQuery string `json:"viewQuery,omitempty"`
  4015  	// ForceSendFields is a list of field names (e.g. "ViewQuery") to
  4016  	// unconditionally include in API requests. By default, fields with empty or
  4017  	// default values are omitted from API requests. See
  4018  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4019  	// details.
  4020  	ForceSendFields []string `json:"-"`
  4021  	// NullFields is a list of field names (e.g. "ViewQuery") to include in API
  4022  	// requests with the JSON null value. By default, fields with empty values are
  4023  	// omitted from API requests. See
  4024  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4025  	NullFields []string `json:"-"`
  4026  }
  4027  
  4028  func (s *GoogleCloudDatacatalogV1beta1ViewSpec) MarshalJSON() ([]byte, error) {
  4029  	type NoMethod GoogleCloudDatacatalogV1beta1ViewSpec
  4030  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4031  }
  4032  
  4033  // Policy: An Identity and Access Management (IAM) policy, which specifies
  4034  // access controls for Google Cloud resources. A `Policy` is a collection of
  4035  // `bindings`. A `binding` binds one or more `members`, or principals, to a
  4036  // single `role`. Principals can be user accounts, service accounts, Google
  4037  // groups, and domains (such as G Suite). A `role` is a named list of
  4038  // permissions; each `role` can be an IAM predefined role or a user-created
  4039  // custom role. For some types of Google Cloud resources, a `binding` can also
  4040  // specify a `condition`, which is a logical expression that allows access to a
  4041  // resource only if the expression evaluates to `true`. A condition can add
  4042  // constraints based on attributes of the request, the resource, or both. To
  4043  // learn which resources support conditions in their IAM policies, see the IAM
  4044  // documentation
  4045  // (https://cloud.google.com/iam/help/conditions/resource-policies). **JSON
  4046  // example:** ``` { "bindings": [ { "role":
  4047  // "roles/resourcemanager.organizationAdmin", "members": [
  4048  // "user:mike@example.com", "group:admins@example.com", "domain:google.com",
  4049  // "serviceAccount:my-project-id@appspot.gserviceaccount.com" ] }, { "role":
  4050  // "roles/resourcemanager.organizationViewer", "members": [
  4051  // "user:eve@example.com" ], "condition": { "title": "expirable access",
  4052  // "description": "Does not grant access after Sep 2020", "expression":
  4053  // "request.time < timestamp('2020-10-01T00:00:00.000Z')", } } ], "etag":
  4054  // "BwWWja0YfJA=", "version": 3 } ``` **YAML example:** ``` bindings: -
  4055  // members: - user:mike@example.com - group:admins@example.com -
  4056  // domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
  4057  // role: roles/resourcemanager.organizationAdmin - members: -
  4058  // user:eve@example.com role: roles/resourcemanager.organizationViewer
  4059  // condition: title: expirable access description: Does not grant access after
  4060  // Sep 2020 expression: request.time < timestamp('2020-10-01T00:00:00.000Z')
  4061  // etag: BwWWja0YfJA= version: 3 ``` For a description of IAM and its features,
  4062  // see the IAM documentation (https://cloud.google.com/iam/docs/).
  4063  type Policy struct {
  4064  	// Bindings: Associates a list of `members`, or principals, with a `role`.
  4065  	// Optionally, may specify a `condition` that determines how and when the
  4066  	// `bindings` are applied. Each of the `bindings` must contain at least one
  4067  	// principal. The `bindings` in a `Policy` can refer to up to 1,500 principals;
  4068  	// up to 250 of these principals can be Google groups. Each occurrence of a
  4069  	// principal counts towards these limits. For example, if the `bindings` grant
  4070  	// 50 different roles to `user:alice@example.com`, and not to any other
  4071  	// principal, then you can add another 1,450 principals to the `bindings` in
  4072  	// the `Policy`.
  4073  	Bindings []*Binding `json:"bindings,omitempty"`
  4074  	// Etag: `etag` is used for optimistic concurrency control as a way to help
  4075  	// prevent simultaneous updates of a policy from overwriting each other. It is
  4076  	// strongly suggested that systems make use of the `etag` in the
  4077  	// read-modify-write cycle to perform policy updates in order to avoid race
  4078  	// conditions: An `etag` is returned in the response to `getIamPolicy`, and
  4079  	// systems are expected to put that etag in the request to `setIamPolicy` to
  4080  	// ensure that their change will be applied to the same version of the policy.
  4081  	// **Important:** If you use IAM Conditions, you must include the `etag` field
  4082  	// whenever you call `setIamPolicy`. If you omit this field, then IAM allows
  4083  	// you to overwrite a version `3` policy with a version `1` policy, and all of
  4084  	// the conditions in the version `3` policy are lost.
  4085  	Etag string `json:"etag,omitempty"`
  4086  	// Version: Specifies the format of the policy. Valid values are `0`, `1`, and
  4087  	// `3`. Requests that specify an invalid value are rejected. Any operation that
  4088  	// affects conditional role bindings must specify version `3`. This requirement
  4089  	// applies to the following operations: * Getting a policy that includes a
  4090  	// conditional role binding * Adding a conditional role binding to a policy *
  4091  	// Changing a conditional role binding in a policy * Removing any role binding,
  4092  	// with or without a condition, from a policy that includes conditions
  4093  	// **Important:** If you use IAM Conditions, you must include the `etag` field
  4094  	// whenever you call `setIamPolicy`. If you omit this field, then IAM allows
  4095  	// you to overwrite a version `3` policy with a version `1` policy, and all of
  4096  	// the conditions in the version `3` policy are lost. If a policy does not
  4097  	// include any conditions, operations on that policy may specify any valid
  4098  	// version or leave the field unset. To learn which resources support
  4099  	// conditions in their IAM policies, see the IAM documentation
  4100  	// (https://cloud.google.com/iam/help/conditions/resource-policies).
  4101  	Version int64 `json:"version,omitempty"`
  4102  
  4103  	// ServerResponse contains the HTTP response code and headers from the server.
  4104  	googleapi.ServerResponse `json:"-"`
  4105  	// ForceSendFields is a list of field names (e.g. "Bindings") to
  4106  	// unconditionally include in API requests. By default, fields with empty or
  4107  	// default values are omitted from API requests. See
  4108  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4109  	// details.
  4110  	ForceSendFields []string `json:"-"`
  4111  	// NullFields is a list of field names (e.g. "Bindings") to include in API
  4112  	// requests with the JSON null value. By default, fields with empty values are
  4113  	// omitted from API requests. See
  4114  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4115  	NullFields []string `json:"-"`
  4116  }
  4117  
  4118  func (s *Policy) MarshalJSON() ([]byte, error) {
  4119  	type NoMethod Policy
  4120  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4121  }
  4122  
  4123  // SetIamPolicyRequest: Request message for `SetIamPolicy` method.
  4124  type SetIamPolicyRequest struct {
  4125  	// Policy: REQUIRED: The complete policy to be applied to the `resource`. The
  4126  	// size of the policy is limited to a few 10s of KB. An empty policy is a valid
  4127  	// policy but certain Google Cloud services (such as Projects) might reject
  4128  	// them.
  4129  	Policy *Policy `json:"policy,omitempty"`
  4130  	// ForceSendFields is a list of field names (e.g. "Policy") to unconditionally
  4131  	// include in API requests. By default, fields with empty or default values are
  4132  	// omitted from API requests. See
  4133  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4134  	// details.
  4135  	ForceSendFields []string `json:"-"`
  4136  	// NullFields is a list of field names (e.g. "Policy") to include in API
  4137  	// requests with the JSON null value. By default, fields with empty values are
  4138  	// omitted from API requests. See
  4139  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4140  	NullFields []string `json:"-"`
  4141  }
  4142  
  4143  func (s *SetIamPolicyRequest) MarshalJSON() ([]byte, error) {
  4144  	type NoMethod SetIamPolicyRequest
  4145  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4146  }
  4147  
  4148  // Status: The `Status` type defines a logical error model that is suitable for
  4149  // different programming environments, including REST APIs and RPC APIs. It is
  4150  // used by gRPC (https://github.com/grpc). Each `Status` message contains three
  4151  // pieces of data: error code, error message, and error details. You can find
  4152  // out more about this error model and how to work with it in the API Design
  4153  // Guide (https://cloud.google.com/apis/design/errors).
  4154  type Status struct {
  4155  	// Code: The status code, which should be an enum value of google.rpc.Code.
  4156  	Code int64 `json:"code,omitempty"`
  4157  	// Details: A list of messages that carry the error details. There is a common
  4158  	// set of message types for APIs to use.
  4159  	Details []googleapi.RawMessage `json:"details,omitempty"`
  4160  	// Message: A developer-facing error message, which should be in English. Any
  4161  	// user-facing error message should be localized and sent in the
  4162  	// google.rpc.Status.details field, or localized by the client.
  4163  	Message string `json:"message,omitempty"`
  4164  	// ForceSendFields is a list of field names (e.g. "Code") to unconditionally
  4165  	// include in API requests. By default, fields with empty or default values are
  4166  	// omitted from API requests. See
  4167  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4168  	// details.
  4169  	ForceSendFields []string `json:"-"`
  4170  	// NullFields is a list of field names (e.g. "Code") to include in API requests
  4171  	// with the JSON null value. By default, fields with empty values are omitted
  4172  	// from API requests. See
  4173  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4174  	NullFields []string `json:"-"`
  4175  }
  4176  
  4177  func (s *Status) MarshalJSON() ([]byte, error) {
  4178  	type NoMethod Status
  4179  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4180  }
  4181  
  4182  // TestIamPermissionsRequest: Request message for `TestIamPermissions` method.
  4183  type TestIamPermissionsRequest struct {
  4184  	// Permissions: The set of permissions to check for the `resource`. Permissions
  4185  	// with wildcards (such as `*` or `storage.*`) are not allowed. For more
  4186  	// information see IAM Overview
  4187  	// (https://cloud.google.com/iam/docs/overview#permissions).
  4188  	Permissions []string `json:"permissions,omitempty"`
  4189  	// ForceSendFields is a list of field names (e.g. "Permissions") to
  4190  	// unconditionally include in API requests. By default, fields with empty or
  4191  	// default values are omitted from API requests. See
  4192  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4193  	// details.
  4194  	ForceSendFields []string `json:"-"`
  4195  	// NullFields is a list of field names (e.g. "Permissions") to include in API
  4196  	// requests with the JSON null value. By default, fields with empty values are
  4197  	// omitted from API requests. See
  4198  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4199  	NullFields []string `json:"-"`
  4200  }
  4201  
  4202  func (s *TestIamPermissionsRequest) MarshalJSON() ([]byte, error) {
  4203  	type NoMethod TestIamPermissionsRequest
  4204  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4205  }
  4206  
  4207  // TestIamPermissionsResponse: Response message for `TestIamPermissions`
  4208  // method.
  4209  type TestIamPermissionsResponse struct {
  4210  	// Permissions: A subset of `TestPermissionsRequest.permissions` that the
  4211  	// caller is allowed.
  4212  	Permissions []string `json:"permissions,omitempty"`
  4213  
  4214  	// ServerResponse contains the HTTP response code and headers from the server.
  4215  	googleapi.ServerResponse `json:"-"`
  4216  	// ForceSendFields is a list of field names (e.g. "Permissions") to
  4217  	// unconditionally include in API requests. By default, fields with empty or
  4218  	// default values are omitted from API requests. See
  4219  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4220  	// details.
  4221  	ForceSendFields []string `json:"-"`
  4222  	// NullFields is a list of field names (e.g. "Permissions") to include in API
  4223  	// requests with the JSON null value. By default, fields with empty values are
  4224  	// omitted from API requests. See
  4225  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4226  	NullFields []string `json:"-"`
  4227  }
  4228  
  4229  func (s *TestIamPermissionsResponse) MarshalJSON() ([]byte, error) {
  4230  	type NoMethod TestIamPermissionsResponse
  4231  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4232  }
  4233  
  4234  type CatalogSearchCall struct {
  4235  	s                                                 *Service
  4236  	googleclouddatacatalogv1beta1searchcatalogrequest *GoogleCloudDatacatalogV1beta1SearchCatalogRequest
  4237  	urlParams_                                        gensupport.URLParams
  4238  	ctx_                                              context.Context
  4239  	header_                                           http.Header
  4240  }
  4241  
  4242  // Search: Searches Data Catalog for multiple resources like entries, tags that
  4243  // match a query. This is a custom method
  4244  // (https://cloud.google.com/apis/design/custom_methods) and does not return
  4245  // the complete resource, only the resource identifier and high level fields.
  4246  // Clients can subsequently call `Get` methods. Note that Data Catalog search
  4247  // queries do not guarantee full recall. Query results that match your query
  4248  // may not be returned, even in subsequent result pages. Also note that results
  4249  // returned (and not returned) can vary across repeated search queries. See
  4250  // Data Catalog Search Syntax
  4251  // (https://cloud.google.com/data-catalog/docs/how-to/search-reference) for
  4252  // more information.
  4253  func (r *CatalogService) Search(googleclouddatacatalogv1beta1searchcatalogrequest *GoogleCloudDatacatalogV1beta1SearchCatalogRequest) *CatalogSearchCall {
  4254  	c := &CatalogSearchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4255  	c.googleclouddatacatalogv1beta1searchcatalogrequest = googleclouddatacatalogv1beta1searchcatalogrequest
  4256  	return c
  4257  }
  4258  
  4259  // Fields allows partial responses to be retrieved. See
  4260  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4261  // details.
  4262  func (c *CatalogSearchCall) Fields(s ...googleapi.Field) *CatalogSearchCall {
  4263  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4264  	return c
  4265  }
  4266  
  4267  // Context sets the context to be used in this call's Do method.
  4268  func (c *CatalogSearchCall) Context(ctx context.Context) *CatalogSearchCall {
  4269  	c.ctx_ = ctx
  4270  	return c
  4271  }
  4272  
  4273  // Header returns a http.Header that can be modified by the caller to add
  4274  // headers to the request.
  4275  func (c *CatalogSearchCall) Header() http.Header {
  4276  	if c.header_ == nil {
  4277  		c.header_ = make(http.Header)
  4278  	}
  4279  	return c.header_
  4280  }
  4281  
  4282  func (c *CatalogSearchCall) doRequest(alt string) (*http.Response, error) {
  4283  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  4284  	var body io.Reader = nil
  4285  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddatacatalogv1beta1searchcatalogrequest)
  4286  	if err != nil {
  4287  		return nil, err
  4288  	}
  4289  	c.urlParams_.Set("alt", alt)
  4290  	c.urlParams_.Set("prettyPrint", "false")
  4291  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/catalog:search")
  4292  	urls += "?" + c.urlParams_.Encode()
  4293  	req, err := http.NewRequest("POST", urls, body)
  4294  	if err != nil {
  4295  		return nil, err
  4296  	}
  4297  	req.Header = reqHeaders
  4298  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4299  }
  4300  
  4301  // Do executes the "datacatalog.catalog.search" call.
  4302  // Any non-2xx status code is an error. Response headers are in either
  4303  // *GoogleCloudDatacatalogV1beta1SearchCatalogResponse.ServerResponse.Header or
  4304  // (if a response was returned at all) in error.(*googleapi.Error).Header. Use
  4305  // googleapi.IsNotModified to check whether the returned error was because
  4306  // http.StatusNotModified was returned.
  4307  func (c *CatalogSearchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogV1beta1SearchCatalogResponse, error) {
  4308  	gensupport.SetOptions(c.urlParams_, opts...)
  4309  	res, err := c.doRequest("json")
  4310  	if res != nil && res.StatusCode == http.StatusNotModified {
  4311  		if res.Body != nil {
  4312  			res.Body.Close()
  4313  		}
  4314  		return nil, gensupport.WrapError(&googleapi.Error{
  4315  			Code:   res.StatusCode,
  4316  			Header: res.Header,
  4317  		})
  4318  	}
  4319  	if err != nil {
  4320  		return nil, err
  4321  	}
  4322  	defer googleapi.CloseBody(res)
  4323  	if err := googleapi.CheckResponse(res); err != nil {
  4324  		return nil, gensupport.WrapError(err)
  4325  	}
  4326  	ret := &GoogleCloudDatacatalogV1beta1SearchCatalogResponse{
  4327  		ServerResponse: googleapi.ServerResponse{
  4328  			Header:         res.Header,
  4329  			HTTPStatusCode: res.StatusCode,
  4330  		},
  4331  	}
  4332  	target := &ret
  4333  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4334  		return nil, err
  4335  	}
  4336  	return ret, nil
  4337  }
  4338  
  4339  // Pages invokes f for each page of results.
  4340  // A non-nil error returned from f will halt the iteration.
  4341  // The provided context supersedes any context provided to the Context method.
  4342  func (c *CatalogSearchCall) Pages(ctx context.Context, f func(*GoogleCloudDatacatalogV1beta1SearchCatalogResponse) error) error {
  4343  	c.ctx_ = ctx
  4344  	defer func(pt string) { c.googleclouddatacatalogv1beta1searchcatalogrequest.PageToken = pt }(c.googleclouddatacatalogv1beta1searchcatalogrequest.PageToken)
  4345  	for {
  4346  		x, err := c.Do()
  4347  		if err != nil {
  4348  			return err
  4349  		}
  4350  		if err := f(x); err != nil {
  4351  			return err
  4352  		}
  4353  		if x.NextPageToken == "" {
  4354  			return nil
  4355  		}
  4356  		c.googleclouddatacatalogv1beta1searchcatalogrequest.PageToken = x.NextPageToken
  4357  	}
  4358  }
  4359  
  4360  type EntriesLookupCall struct {
  4361  	s            *Service
  4362  	urlParams_   gensupport.URLParams
  4363  	ifNoneMatch_ string
  4364  	ctx_         context.Context
  4365  	header_      http.Header
  4366  }
  4367  
  4368  // Lookup: Get an entry by target resource name. This method allows clients to
  4369  // use the resource name from the source Google Cloud Platform service to get
  4370  // the Data Catalog Entry.
  4371  func (r *EntriesService) Lookup() *EntriesLookupCall {
  4372  	c := &EntriesLookupCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4373  	return c
  4374  }
  4375  
  4376  // LinkedResource sets the optional parameter "linkedResource": The full name
  4377  // of the Google Cloud Platform resource the Data Catalog entry represents.
  4378  // See: https://cloud.google.com/apis/design/resource_names#full_resource_name.
  4379  // Full names are case-sensitive. Examples: *
  4380  // //bigquery.googleapis.com/projects/projectId/datasets/datasetId/tables/tableI
  4381  // d * //pubsub.googleapis.com/projects/projectId/topics/topicId
  4382  func (c *EntriesLookupCall) LinkedResource(linkedResource string) *EntriesLookupCall {
  4383  	c.urlParams_.Set("linkedResource", linkedResource)
  4384  	return c
  4385  }
  4386  
  4387  // SqlResource sets the optional parameter "sqlResource": The SQL name of the
  4388  // entry. SQL names are case-sensitive. Examples: *
  4389  // `pubsub.project_id.topic_id` * “pubsub.project_id.`topic.id.with.dots` “ *
  4390  // `bigquery.table.project_id.dataset_id.table_id` *
  4391  // `bigquery.dataset.project_id.dataset_id` *
  4392  // `datacatalog.entry.project_id.location_id.entry_group_id.entry_id` `*_id`s
  4393  // should satisfy the standard SQL rules for identifiers.
  4394  // https://cloud.google.com/bigquery/docs/reference/standard-sql/lexical.
  4395  func (c *EntriesLookupCall) SqlResource(sqlResource string) *EntriesLookupCall {
  4396  	c.urlParams_.Set("sqlResource", sqlResource)
  4397  	return c
  4398  }
  4399  
  4400  // Fields allows partial responses to be retrieved. See
  4401  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4402  // details.
  4403  func (c *EntriesLookupCall) Fields(s ...googleapi.Field) *EntriesLookupCall {
  4404  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4405  	return c
  4406  }
  4407  
  4408  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  4409  // object's ETag matches the given value. This is useful for getting updates
  4410  // only after the object has changed since the last request.
  4411  func (c *EntriesLookupCall) IfNoneMatch(entityTag string) *EntriesLookupCall {
  4412  	c.ifNoneMatch_ = entityTag
  4413  	return c
  4414  }
  4415  
  4416  // Context sets the context to be used in this call's Do method.
  4417  func (c *EntriesLookupCall) Context(ctx context.Context) *EntriesLookupCall {
  4418  	c.ctx_ = ctx
  4419  	return c
  4420  }
  4421  
  4422  // Header returns a http.Header that can be modified by the caller to add
  4423  // headers to the request.
  4424  func (c *EntriesLookupCall) Header() http.Header {
  4425  	if c.header_ == nil {
  4426  		c.header_ = make(http.Header)
  4427  	}
  4428  	return c.header_
  4429  }
  4430  
  4431  func (c *EntriesLookupCall) doRequest(alt string) (*http.Response, error) {
  4432  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  4433  	if c.ifNoneMatch_ != "" {
  4434  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  4435  	}
  4436  	var body io.Reader = nil
  4437  	c.urlParams_.Set("alt", alt)
  4438  	c.urlParams_.Set("prettyPrint", "false")
  4439  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/entries:lookup")
  4440  	urls += "?" + c.urlParams_.Encode()
  4441  	req, err := http.NewRequest("GET", urls, body)
  4442  	if err != nil {
  4443  		return nil, err
  4444  	}
  4445  	req.Header = reqHeaders
  4446  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4447  }
  4448  
  4449  // Do executes the "datacatalog.entries.lookup" call.
  4450  // Any non-2xx status code is an error. Response headers are in either
  4451  // *GoogleCloudDatacatalogV1beta1Entry.ServerResponse.Header or (if a response
  4452  // was returned at all) in error.(*googleapi.Error).Header. Use
  4453  // googleapi.IsNotModified to check whether the returned error was because
  4454  // http.StatusNotModified was returned.
  4455  func (c *EntriesLookupCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogV1beta1Entry, error) {
  4456  	gensupport.SetOptions(c.urlParams_, opts...)
  4457  	res, err := c.doRequest("json")
  4458  	if res != nil && res.StatusCode == http.StatusNotModified {
  4459  		if res.Body != nil {
  4460  			res.Body.Close()
  4461  		}
  4462  		return nil, gensupport.WrapError(&googleapi.Error{
  4463  			Code:   res.StatusCode,
  4464  			Header: res.Header,
  4465  		})
  4466  	}
  4467  	if err != nil {
  4468  		return nil, err
  4469  	}
  4470  	defer googleapi.CloseBody(res)
  4471  	if err := googleapi.CheckResponse(res); err != nil {
  4472  		return nil, gensupport.WrapError(err)
  4473  	}
  4474  	ret := &GoogleCloudDatacatalogV1beta1Entry{
  4475  		ServerResponse: googleapi.ServerResponse{
  4476  			Header:         res.Header,
  4477  			HTTPStatusCode: res.StatusCode,
  4478  		},
  4479  	}
  4480  	target := &ret
  4481  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4482  		return nil, err
  4483  	}
  4484  	return ret, nil
  4485  }
  4486  
  4487  type ProjectsLocationsEntryGroupsCreateCall struct {
  4488  	s                                       *Service
  4489  	parent                                  string
  4490  	googleclouddatacatalogv1beta1entrygroup *GoogleCloudDatacatalogV1beta1EntryGroup
  4491  	urlParams_                              gensupport.URLParams
  4492  	ctx_                                    context.Context
  4493  	header_                                 http.Header
  4494  }
  4495  
  4496  // Create: A maximum of 10,000 entry groups may be created per organization
  4497  // across all locations. Users should enable the Data Catalog API in the
  4498  // project identified by the `parent` parameter (see [Data Catalog Resource
  4499  // Project]
  4500  // (https://cloud.google.com/data-catalog/docs/concepts/resource-project) for
  4501  // more information).
  4502  //
  4503  //   - parent: The name of the project this entry group is in. Example: *
  4504  //     projects/{project_id}/locations/{location} Note that this EntryGroup and
  4505  //     its child resources may not actually be stored in the location in this
  4506  //     name.
  4507  func (r *ProjectsLocationsEntryGroupsService) Create(parent string, googleclouddatacatalogv1beta1entrygroup *GoogleCloudDatacatalogV1beta1EntryGroup) *ProjectsLocationsEntryGroupsCreateCall {
  4508  	c := &ProjectsLocationsEntryGroupsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4509  	c.parent = parent
  4510  	c.googleclouddatacatalogv1beta1entrygroup = googleclouddatacatalogv1beta1entrygroup
  4511  	return c
  4512  }
  4513  
  4514  // EntryGroupId sets the optional parameter "entryGroupId": Required. The id of
  4515  // the entry group to create. The id must begin with a letter or underscore,
  4516  // contain only English letters, numbers and underscores, and be at most 64
  4517  // characters.
  4518  func (c *ProjectsLocationsEntryGroupsCreateCall) EntryGroupId(entryGroupId string) *ProjectsLocationsEntryGroupsCreateCall {
  4519  	c.urlParams_.Set("entryGroupId", entryGroupId)
  4520  	return c
  4521  }
  4522  
  4523  // Fields allows partial responses to be retrieved. See
  4524  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4525  // details.
  4526  func (c *ProjectsLocationsEntryGroupsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsEntryGroupsCreateCall {
  4527  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4528  	return c
  4529  }
  4530  
  4531  // Context sets the context to be used in this call's Do method.
  4532  func (c *ProjectsLocationsEntryGroupsCreateCall) Context(ctx context.Context) *ProjectsLocationsEntryGroupsCreateCall {
  4533  	c.ctx_ = ctx
  4534  	return c
  4535  }
  4536  
  4537  // Header returns a http.Header that can be modified by the caller to add
  4538  // headers to the request.
  4539  func (c *ProjectsLocationsEntryGroupsCreateCall) Header() http.Header {
  4540  	if c.header_ == nil {
  4541  		c.header_ = make(http.Header)
  4542  	}
  4543  	return c.header_
  4544  }
  4545  
  4546  func (c *ProjectsLocationsEntryGroupsCreateCall) doRequest(alt string) (*http.Response, error) {
  4547  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  4548  	var body io.Reader = nil
  4549  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddatacatalogv1beta1entrygroup)
  4550  	if err != nil {
  4551  		return nil, err
  4552  	}
  4553  	c.urlParams_.Set("alt", alt)
  4554  	c.urlParams_.Set("prettyPrint", "false")
  4555  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/entryGroups")
  4556  	urls += "?" + c.urlParams_.Encode()
  4557  	req, err := http.NewRequest("POST", urls, body)
  4558  	if err != nil {
  4559  		return nil, err
  4560  	}
  4561  	req.Header = reqHeaders
  4562  	googleapi.Expand(req.URL, map[string]string{
  4563  		"parent": c.parent,
  4564  	})
  4565  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4566  }
  4567  
  4568  // Do executes the "datacatalog.projects.locations.entryGroups.create" call.
  4569  // Any non-2xx status code is an error. Response headers are in either
  4570  // *GoogleCloudDatacatalogV1beta1EntryGroup.ServerResponse.Header or (if a
  4571  // response was returned at all) in error.(*googleapi.Error).Header. Use
  4572  // googleapi.IsNotModified to check whether the returned error was because
  4573  // http.StatusNotModified was returned.
  4574  func (c *ProjectsLocationsEntryGroupsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogV1beta1EntryGroup, error) {
  4575  	gensupport.SetOptions(c.urlParams_, opts...)
  4576  	res, err := c.doRequest("json")
  4577  	if res != nil && res.StatusCode == http.StatusNotModified {
  4578  		if res.Body != nil {
  4579  			res.Body.Close()
  4580  		}
  4581  		return nil, gensupport.WrapError(&googleapi.Error{
  4582  			Code:   res.StatusCode,
  4583  			Header: res.Header,
  4584  		})
  4585  	}
  4586  	if err != nil {
  4587  		return nil, err
  4588  	}
  4589  	defer googleapi.CloseBody(res)
  4590  	if err := googleapi.CheckResponse(res); err != nil {
  4591  		return nil, gensupport.WrapError(err)
  4592  	}
  4593  	ret := &GoogleCloudDatacatalogV1beta1EntryGroup{
  4594  		ServerResponse: googleapi.ServerResponse{
  4595  			Header:         res.Header,
  4596  			HTTPStatusCode: res.StatusCode,
  4597  		},
  4598  	}
  4599  	target := &ret
  4600  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4601  		return nil, err
  4602  	}
  4603  	return ret, nil
  4604  }
  4605  
  4606  type ProjectsLocationsEntryGroupsDeleteCall struct {
  4607  	s          *Service
  4608  	name       string
  4609  	urlParams_ gensupport.URLParams
  4610  	ctx_       context.Context
  4611  	header_    http.Header
  4612  }
  4613  
  4614  // Delete: Deletes an EntryGroup. Only entry groups that do not contain entries
  4615  // can be deleted. Users should enable the Data Catalog API in the project
  4616  // identified by the `name` parameter (see [Data Catalog Resource Project]
  4617  // (https://cloud.google.com/data-catalog/docs/concepts/resource-project) for
  4618  // more information).
  4619  //
  4620  //   - name: The name of the entry group. For example,
  4621  //     `projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}`.
  4622  func (r *ProjectsLocationsEntryGroupsService) Delete(name string) *ProjectsLocationsEntryGroupsDeleteCall {
  4623  	c := &ProjectsLocationsEntryGroupsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4624  	c.name = name
  4625  	return c
  4626  }
  4627  
  4628  // Force sets the optional parameter "force": If true, deletes all entries in
  4629  // the entry group.
  4630  func (c *ProjectsLocationsEntryGroupsDeleteCall) Force(force bool) *ProjectsLocationsEntryGroupsDeleteCall {
  4631  	c.urlParams_.Set("force", fmt.Sprint(force))
  4632  	return c
  4633  }
  4634  
  4635  // Fields allows partial responses to be retrieved. See
  4636  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4637  // details.
  4638  func (c *ProjectsLocationsEntryGroupsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsEntryGroupsDeleteCall {
  4639  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4640  	return c
  4641  }
  4642  
  4643  // Context sets the context to be used in this call's Do method.
  4644  func (c *ProjectsLocationsEntryGroupsDeleteCall) Context(ctx context.Context) *ProjectsLocationsEntryGroupsDeleteCall {
  4645  	c.ctx_ = ctx
  4646  	return c
  4647  }
  4648  
  4649  // Header returns a http.Header that can be modified by the caller to add
  4650  // headers to the request.
  4651  func (c *ProjectsLocationsEntryGroupsDeleteCall) Header() http.Header {
  4652  	if c.header_ == nil {
  4653  		c.header_ = make(http.Header)
  4654  	}
  4655  	return c.header_
  4656  }
  4657  
  4658  func (c *ProjectsLocationsEntryGroupsDeleteCall) doRequest(alt string) (*http.Response, error) {
  4659  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  4660  	var body io.Reader = nil
  4661  	c.urlParams_.Set("alt", alt)
  4662  	c.urlParams_.Set("prettyPrint", "false")
  4663  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
  4664  	urls += "?" + c.urlParams_.Encode()
  4665  	req, err := http.NewRequest("DELETE", urls, body)
  4666  	if err != nil {
  4667  		return nil, err
  4668  	}
  4669  	req.Header = reqHeaders
  4670  	googleapi.Expand(req.URL, map[string]string{
  4671  		"name": c.name,
  4672  	})
  4673  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4674  }
  4675  
  4676  // Do executes the "datacatalog.projects.locations.entryGroups.delete" call.
  4677  // Any non-2xx status code is an error. Response headers are in either
  4678  // *Empty.ServerResponse.Header or (if a response was returned at all) in
  4679  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  4680  // whether the returned error was because http.StatusNotModified was returned.
  4681  func (c *ProjectsLocationsEntryGroupsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
  4682  	gensupport.SetOptions(c.urlParams_, opts...)
  4683  	res, err := c.doRequest("json")
  4684  	if res != nil && res.StatusCode == http.StatusNotModified {
  4685  		if res.Body != nil {
  4686  			res.Body.Close()
  4687  		}
  4688  		return nil, gensupport.WrapError(&googleapi.Error{
  4689  			Code:   res.StatusCode,
  4690  			Header: res.Header,
  4691  		})
  4692  	}
  4693  	if err != nil {
  4694  		return nil, err
  4695  	}
  4696  	defer googleapi.CloseBody(res)
  4697  	if err := googleapi.CheckResponse(res); err != nil {
  4698  		return nil, gensupport.WrapError(err)
  4699  	}
  4700  	ret := &Empty{
  4701  		ServerResponse: googleapi.ServerResponse{
  4702  			Header:         res.Header,
  4703  			HTTPStatusCode: res.StatusCode,
  4704  		},
  4705  	}
  4706  	target := &ret
  4707  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4708  		return nil, err
  4709  	}
  4710  	return ret, nil
  4711  }
  4712  
  4713  type ProjectsLocationsEntryGroupsGetCall struct {
  4714  	s            *Service
  4715  	name         string
  4716  	urlParams_   gensupport.URLParams
  4717  	ifNoneMatch_ string
  4718  	ctx_         context.Context
  4719  	header_      http.Header
  4720  }
  4721  
  4722  // Get: Gets an EntryGroup.
  4723  //
  4724  //   - name: The name of the entry group. For example,
  4725  //     `projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}`.
  4726  func (r *ProjectsLocationsEntryGroupsService) Get(name string) *ProjectsLocationsEntryGroupsGetCall {
  4727  	c := &ProjectsLocationsEntryGroupsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4728  	c.name = name
  4729  	return c
  4730  }
  4731  
  4732  // ReadMask sets the optional parameter "readMask": The fields to return. If
  4733  // not set or empty, all fields are returned.
  4734  func (c *ProjectsLocationsEntryGroupsGetCall) ReadMask(readMask string) *ProjectsLocationsEntryGroupsGetCall {
  4735  	c.urlParams_.Set("readMask", readMask)
  4736  	return c
  4737  }
  4738  
  4739  // Fields allows partial responses to be retrieved. See
  4740  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4741  // details.
  4742  func (c *ProjectsLocationsEntryGroupsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsEntryGroupsGetCall {
  4743  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4744  	return c
  4745  }
  4746  
  4747  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  4748  // object's ETag matches the given value. This is useful for getting updates
  4749  // only after the object has changed since the last request.
  4750  func (c *ProjectsLocationsEntryGroupsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsEntryGroupsGetCall {
  4751  	c.ifNoneMatch_ = entityTag
  4752  	return c
  4753  }
  4754  
  4755  // Context sets the context to be used in this call's Do method.
  4756  func (c *ProjectsLocationsEntryGroupsGetCall) Context(ctx context.Context) *ProjectsLocationsEntryGroupsGetCall {
  4757  	c.ctx_ = ctx
  4758  	return c
  4759  }
  4760  
  4761  // Header returns a http.Header that can be modified by the caller to add
  4762  // headers to the request.
  4763  func (c *ProjectsLocationsEntryGroupsGetCall) Header() http.Header {
  4764  	if c.header_ == nil {
  4765  		c.header_ = make(http.Header)
  4766  	}
  4767  	return c.header_
  4768  }
  4769  
  4770  func (c *ProjectsLocationsEntryGroupsGetCall) doRequest(alt string) (*http.Response, error) {
  4771  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  4772  	if c.ifNoneMatch_ != "" {
  4773  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  4774  	}
  4775  	var body io.Reader = nil
  4776  	c.urlParams_.Set("alt", alt)
  4777  	c.urlParams_.Set("prettyPrint", "false")
  4778  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
  4779  	urls += "?" + c.urlParams_.Encode()
  4780  	req, err := http.NewRequest("GET", urls, body)
  4781  	if err != nil {
  4782  		return nil, err
  4783  	}
  4784  	req.Header = reqHeaders
  4785  	googleapi.Expand(req.URL, map[string]string{
  4786  		"name": c.name,
  4787  	})
  4788  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4789  }
  4790  
  4791  // Do executes the "datacatalog.projects.locations.entryGroups.get" call.
  4792  // Any non-2xx status code is an error. Response headers are in either
  4793  // *GoogleCloudDatacatalogV1beta1EntryGroup.ServerResponse.Header or (if a
  4794  // response was returned at all) in error.(*googleapi.Error).Header. Use
  4795  // googleapi.IsNotModified to check whether the returned error was because
  4796  // http.StatusNotModified was returned.
  4797  func (c *ProjectsLocationsEntryGroupsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogV1beta1EntryGroup, error) {
  4798  	gensupport.SetOptions(c.urlParams_, opts...)
  4799  	res, err := c.doRequest("json")
  4800  	if res != nil && res.StatusCode == http.StatusNotModified {
  4801  		if res.Body != nil {
  4802  			res.Body.Close()
  4803  		}
  4804  		return nil, gensupport.WrapError(&googleapi.Error{
  4805  			Code:   res.StatusCode,
  4806  			Header: res.Header,
  4807  		})
  4808  	}
  4809  	if err != nil {
  4810  		return nil, err
  4811  	}
  4812  	defer googleapi.CloseBody(res)
  4813  	if err := googleapi.CheckResponse(res); err != nil {
  4814  		return nil, gensupport.WrapError(err)
  4815  	}
  4816  	ret := &GoogleCloudDatacatalogV1beta1EntryGroup{
  4817  		ServerResponse: googleapi.ServerResponse{
  4818  			Header:         res.Header,
  4819  			HTTPStatusCode: res.StatusCode,
  4820  		},
  4821  	}
  4822  	target := &ret
  4823  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4824  		return nil, err
  4825  	}
  4826  	return ret, nil
  4827  }
  4828  
  4829  type ProjectsLocationsEntryGroupsGetIamPolicyCall struct {
  4830  	s                   *Service
  4831  	resource            string
  4832  	getiampolicyrequest *GetIamPolicyRequest
  4833  	urlParams_          gensupport.URLParams
  4834  	ctx_                context.Context
  4835  	header_             http.Header
  4836  }
  4837  
  4838  // GetIamPolicy: Gets the access control policy for a resource. A `NOT_FOUND`
  4839  // error is returned if the resource does not exist. An empty policy is
  4840  // returned if the resource exists but does not have a policy set on it.
  4841  // Supported resources are: - Tag templates. - Entries. - Entry groups. Note,
  4842  // this method cannot be used to manage policies for BigQuery, Pub/Sub and any
  4843  // external Google Cloud Platform resources synced to Data Catalog. Callers
  4844  // must have following Google IAM permission -
  4845  // `datacatalog.tagTemplates.getIamPolicy` to get policies on tag templates. -
  4846  // `datacatalog.entries.getIamPolicy` to get policies on entries. -
  4847  // `datacatalog.entryGroups.getIamPolicy` to get policies on entry groups.
  4848  //
  4849  //   - resource: REQUIRED: The resource for which the policy is being requested.
  4850  //     See Resource names (https://cloud.google.com/apis/design/resource_names)
  4851  //     for the appropriate value for this field.
  4852  func (r *ProjectsLocationsEntryGroupsService) GetIamPolicy(resource string, getiampolicyrequest *GetIamPolicyRequest) *ProjectsLocationsEntryGroupsGetIamPolicyCall {
  4853  	c := &ProjectsLocationsEntryGroupsGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4854  	c.resource = resource
  4855  	c.getiampolicyrequest = getiampolicyrequest
  4856  	return c
  4857  }
  4858  
  4859  // Fields allows partial responses to be retrieved. See
  4860  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4861  // details.
  4862  func (c *ProjectsLocationsEntryGroupsGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsEntryGroupsGetIamPolicyCall {
  4863  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4864  	return c
  4865  }
  4866  
  4867  // Context sets the context to be used in this call's Do method.
  4868  func (c *ProjectsLocationsEntryGroupsGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsEntryGroupsGetIamPolicyCall {
  4869  	c.ctx_ = ctx
  4870  	return c
  4871  }
  4872  
  4873  // Header returns a http.Header that can be modified by the caller to add
  4874  // headers to the request.
  4875  func (c *ProjectsLocationsEntryGroupsGetIamPolicyCall) Header() http.Header {
  4876  	if c.header_ == nil {
  4877  		c.header_ = make(http.Header)
  4878  	}
  4879  	return c.header_
  4880  }
  4881  
  4882  func (c *ProjectsLocationsEntryGroupsGetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
  4883  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  4884  	var body io.Reader = nil
  4885  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.getiampolicyrequest)
  4886  	if err != nil {
  4887  		return nil, err
  4888  	}
  4889  	c.urlParams_.Set("alt", alt)
  4890  	c.urlParams_.Set("prettyPrint", "false")
  4891  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:getIamPolicy")
  4892  	urls += "?" + c.urlParams_.Encode()
  4893  	req, err := http.NewRequest("POST", urls, body)
  4894  	if err != nil {
  4895  		return nil, err
  4896  	}
  4897  	req.Header = reqHeaders
  4898  	googleapi.Expand(req.URL, map[string]string{
  4899  		"resource": c.resource,
  4900  	})
  4901  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4902  }
  4903  
  4904  // Do executes the "datacatalog.projects.locations.entryGroups.getIamPolicy" call.
  4905  // Any non-2xx status code is an error. Response headers are in either
  4906  // *Policy.ServerResponse.Header or (if a response was returned at all) in
  4907  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  4908  // whether the returned error was because http.StatusNotModified was returned.
  4909  func (c *ProjectsLocationsEntryGroupsGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
  4910  	gensupport.SetOptions(c.urlParams_, opts...)
  4911  	res, err := c.doRequest("json")
  4912  	if res != nil && res.StatusCode == http.StatusNotModified {
  4913  		if res.Body != nil {
  4914  			res.Body.Close()
  4915  		}
  4916  		return nil, gensupport.WrapError(&googleapi.Error{
  4917  			Code:   res.StatusCode,
  4918  			Header: res.Header,
  4919  		})
  4920  	}
  4921  	if err != nil {
  4922  		return nil, err
  4923  	}
  4924  	defer googleapi.CloseBody(res)
  4925  	if err := googleapi.CheckResponse(res); err != nil {
  4926  		return nil, gensupport.WrapError(err)
  4927  	}
  4928  	ret := &Policy{
  4929  		ServerResponse: googleapi.ServerResponse{
  4930  			Header:         res.Header,
  4931  			HTTPStatusCode: res.StatusCode,
  4932  		},
  4933  	}
  4934  	target := &ret
  4935  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4936  		return nil, err
  4937  	}
  4938  	return ret, nil
  4939  }
  4940  
  4941  type ProjectsLocationsEntryGroupsListCall struct {
  4942  	s            *Service
  4943  	parent       string
  4944  	urlParams_   gensupport.URLParams
  4945  	ifNoneMatch_ string
  4946  	ctx_         context.Context
  4947  	header_      http.Header
  4948  }
  4949  
  4950  // List: Lists entry groups.
  4951  //
  4952  //   - parent: The name of the location that contains the entry groups, which can
  4953  //     be provided in URL format. Example: *
  4954  //     projects/{project_id}/locations/{location}.
  4955  func (r *ProjectsLocationsEntryGroupsService) List(parent string) *ProjectsLocationsEntryGroupsListCall {
  4956  	c := &ProjectsLocationsEntryGroupsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4957  	c.parent = parent
  4958  	return c
  4959  }
  4960  
  4961  // PageSize sets the optional parameter "pageSize": The maximum number of items
  4962  // to return. Default is 10. Max limit is 1000. Throws an invalid argument for
  4963  // `page_size > 1000`.
  4964  func (c *ProjectsLocationsEntryGroupsListCall) PageSize(pageSize int64) *ProjectsLocationsEntryGroupsListCall {
  4965  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  4966  	return c
  4967  }
  4968  
  4969  // PageToken sets the optional parameter "pageToken": Token that specifies
  4970  // which page is requested. If empty, the first page is returned.
  4971  func (c *ProjectsLocationsEntryGroupsListCall) PageToken(pageToken string) *ProjectsLocationsEntryGroupsListCall {
  4972  	c.urlParams_.Set("pageToken", pageToken)
  4973  	return c
  4974  }
  4975  
  4976  // Fields allows partial responses to be retrieved. See
  4977  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4978  // details.
  4979  func (c *ProjectsLocationsEntryGroupsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsEntryGroupsListCall {
  4980  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4981  	return c
  4982  }
  4983  
  4984  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  4985  // object's ETag matches the given value. This is useful for getting updates
  4986  // only after the object has changed since the last request.
  4987  func (c *ProjectsLocationsEntryGroupsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsEntryGroupsListCall {
  4988  	c.ifNoneMatch_ = entityTag
  4989  	return c
  4990  }
  4991  
  4992  // Context sets the context to be used in this call's Do method.
  4993  func (c *ProjectsLocationsEntryGroupsListCall) Context(ctx context.Context) *ProjectsLocationsEntryGroupsListCall {
  4994  	c.ctx_ = ctx
  4995  	return c
  4996  }
  4997  
  4998  // Header returns a http.Header that can be modified by the caller to add
  4999  // headers to the request.
  5000  func (c *ProjectsLocationsEntryGroupsListCall) Header() http.Header {
  5001  	if c.header_ == nil {
  5002  		c.header_ = make(http.Header)
  5003  	}
  5004  	return c.header_
  5005  }
  5006  
  5007  func (c *ProjectsLocationsEntryGroupsListCall) doRequest(alt string) (*http.Response, error) {
  5008  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  5009  	if c.ifNoneMatch_ != "" {
  5010  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  5011  	}
  5012  	var body io.Reader = nil
  5013  	c.urlParams_.Set("alt", alt)
  5014  	c.urlParams_.Set("prettyPrint", "false")
  5015  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/entryGroups")
  5016  	urls += "?" + c.urlParams_.Encode()
  5017  	req, err := http.NewRequest("GET", urls, body)
  5018  	if err != nil {
  5019  		return nil, err
  5020  	}
  5021  	req.Header = reqHeaders
  5022  	googleapi.Expand(req.URL, map[string]string{
  5023  		"parent": c.parent,
  5024  	})
  5025  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5026  }
  5027  
  5028  // Do executes the "datacatalog.projects.locations.entryGroups.list" call.
  5029  // Any non-2xx status code is an error. Response headers are in either
  5030  // *GoogleCloudDatacatalogV1beta1ListEntryGroupsResponse.ServerResponse.Header
  5031  // or (if a response was returned at all) in error.(*googleapi.Error).Header.
  5032  // Use googleapi.IsNotModified to check whether the returned error was because
  5033  // http.StatusNotModified was returned.
  5034  func (c *ProjectsLocationsEntryGroupsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogV1beta1ListEntryGroupsResponse, error) {
  5035  	gensupport.SetOptions(c.urlParams_, opts...)
  5036  	res, err := c.doRequest("json")
  5037  	if res != nil && res.StatusCode == http.StatusNotModified {
  5038  		if res.Body != nil {
  5039  			res.Body.Close()
  5040  		}
  5041  		return nil, gensupport.WrapError(&googleapi.Error{
  5042  			Code:   res.StatusCode,
  5043  			Header: res.Header,
  5044  		})
  5045  	}
  5046  	if err != nil {
  5047  		return nil, err
  5048  	}
  5049  	defer googleapi.CloseBody(res)
  5050  	if err := googleapi.CheckResponse(res); err != nil {
  5051  		return nil, gensupport.WrapError(err)
  5052  	}
  5053  	ret := &GoogleCloudDatacatalogV1beta1ListEntryGroupsResponse{
  5054  		ServerResponse: googleapi.ServerResponse{
  5055  			Header:         res.Header,
  5056  			HTTPStatusCode: res.StatusCode,
  5057  		},
  5058  	}
  5059  	target := &ret
  5060  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5061  		return nil, err
  5062  	}
  5063  	return ret, nil
  5064  }
  5065  
  5066  // Pages invokes f for each page of results.
  5067  // A non-nil error returned from f will halt the iteration.
  5068  // The provided context supersedes any context provided to the Context method.
  5069  func (c *ProjectsLocationsEntryGroupsListCall) Pages(ctx context.Context, f func(*GoogleCloudDatacatalogV1beta1ListEntryGroupsResponse) error) error {
  5070  	c.ctx_ = ctx
  5071  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  5072  	for {
  5073  		x, err := c.Do()
  5074  		if err != nil {
  5075  			return err
  5076  		}
  5077  		if err := f(x); err != nil {
  5078  			return err
  5079  		}
  5080  		if x.NextPageToken == "" {
  5081  			return nil
  5082  		}
  5083  		c.PageToken(x.NextPageToken)
  5084  	}
  5085  }
  5086  
  5087  type ProjectsLocationsEntryGroupsPatchCall struct {
  5088  	s                                       *Service
  5089  	name                                    string
  5090  	googleclouddatacatalogv1beta1entrygroup *GoogleCloudDatacatalogV1beta1EntryGroup
  5091  	urlParams_                              gensupport.URLParams
  5092  	ctx_                                    context.Context
  5093  	header_                                 http.Header
  5094  }
  5095  
  5096  // Patch: Updates an EntryGroup. The user should enable the Data Catalog API in
  5097  // the project identified by the `entry_group.name` parameter (see [Data
  5098  // Catalog Resource Project]
  5099  // (https://cloud.google.com/data-catalog/docs/concepts/resource-project) for
  5100  // more information).
  5101  //
  5102  //   - name: Identifier. The resource name of the entry group in URL format.
  5103  //     Example: *
  5104  //     projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}
  5105  //     Note that this EntryGroup and its child resources may not actually be
  5106  //     stored in the location in this name.
  5107  func (r *ProjectsLocationsEntryGroupsService) Patch(name string, googleclouddatacatalogv1beta1entrygroup *GoogleCloudDatacatalogV1beta1EntryGroup) *ProjectsLocationsEntryGroupsPatchCall {
  5108  	c := &ProjectsLocationsEntryGroupsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5109  	c.name = name
  5110  	c.googleclouddatacatalogv1beta1entrygroup = googleclouddatacatalogv1beta1entrygroup
  5111  	return c
  5112  }
  5113  
  5114  // UpdateMask sets the optional parameter "updateMask": Names of fields whose
  5115  // values to overwrite on an entry group. If this parameter is absent or empty,
  5116  // all modifiable fields are overwritten. If such fields are non-required and
  5117  // omitted in the request body, their values are emptied.
  5118  func (c *ProjectsLocationsEntryGroupsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsEntryGroupsPatchCall {
  5119  	c.urlParams_.Set("updateMask", updateMask)
  5120  	return c
  5121  }
  5122  
  5123  // Fields allows partial responses to be retrieved. See
  5124  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5125  // details.
  5126  func (c *ProjectsLocationsEntryGroupsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsEntryGroupsPatchCall {
  5127  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5128  	return c
  5129  }
  5130  
  5131  // Context sets the context to be used in this call's Do method.
  5132  func (c *ProjectsLocationsEntryGroupsPatchCall) Context(ctx context.Context) *ProjectsLocationsEntryGroupsPatchCall {
  5133  	c.ctx_ = ctx
  5134  	return c
  5135  }
  5136  
  5137  // Header returns a http.Header that can be modified by the caller to add
  5138  // headers to the request.
  5139  func (c *ProjectsLocationsEntryGroupsPatchCall) Header() http.Header {
  5140  	if c.header_ == nil {
  5141  		c.header_ = make(http.Header)
  5142  	}
  5143  	return c.header_
  5144  }
  5145  
  5146  func (c *ProjectsLocationsEntryGroupsPatchCall) doRequest(alt string) (*http.Response, error) {
  5147  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  5148  	var body io.Reader = nil
  5149  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddatacatalogv1beta1entrygroup)
  5150  	if err != nil {
  5151  		return nil, err
  5152  	}
  5153  	c.urlParams_.Set("alt", alt)
  5154  	c.urlParams_.Set("prettyPrint", "false")
  5155  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
  5156  	urls += "?" + c.urlParams_.Encode()
  5157  	req, err := http.NewRequest("PATCH", urls, body)
  5158  	if err != nil {
  5159  		return nil, err
  5160  	}
  5161  	req.Header = reqHeaders
  5162  	googleapi.Expand(req.URL, map[string]string{
  5163  		"name": c.name,
  5164  	})
  5165  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5166  }
  5167  
  5168  // Do executes the "datacatalog.projects.locations.entryGroups.patch" call.
  5169  // Any non-2xx status code is an error. Response headers are in either
  5170  // *GoogleCloudDatacatalogV1beta1EntryGroup.ServerResponse.Header or (if a
  5171  // response was returned at all) in error.(*googleapi.Error).Header. Use
  5172  // googleapi.IsNotModified to check whether the returned error was because
  5173  // http.StatusNotModified was returned.
  5174  func (c *ProjectsLocationsEntryGroupsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogV1beta1EntryGroup, error) {
  5175  	gensupport.SetOptions(c.urlParams_, opts...)
  5176  	res, err := c.doRequest("json")
  5177  	if res != nil && res.StatusCode == http.StatusNotModified {
  5178  		if res.Body != nil {
  5179  			res.Body.Close()
  5180  		}
  5181  		return nil, gensupport.WrapError(&googleapi.Error{
  5182  			Code:   res.StatusCode,
  5183  			Header: res.Header,
  5184  		})
  5185  	}
  5186  	if err != nil {
  5187  		return nil, err
  5188  	}
  5189  	defer googleapi.CloseBody(res)
  5190  	if err := googleapi.CheckResponse(res); err != nil {
  5191  		return nil, gensupport.WrapError(err)
  5192  	}
  5193  	ret := &GoogleCloudDatacatalogV1beta1EntryGroup{
  5194  		ServerResponse: googleapi.ServerResponse{
  5195  			Header:         res.Header,
  5196  			HTTPStatusCode: res.StatusCode,
  5197  		},
  5198  	}
  5199  	target := &ret
  5200  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5201  		return nil, err
  5202  	}
  5203  	return ret, nil
  5204  }
  5205  
  5206  type ProjectsLocationsEntryGroupsSetIamPolicyCall struct {
  5207  	s                   *Service
  5208  	resource            string
  5209  	setiampolicyrequest *SetIamPolicyRequest
  5210  	urlParams_          gensupport.URLParams
  5211  	ctx_                context.Context
  5212  	header_             http.Header
  5213  }
  5214  
  5215  // SetIamPolicy: Sets the access control policy for a resource. Replaces any
  5216  // existing policy. Supported resources are: - Tag templates. - Entries. -
  5217  // Entry groups. Note, this method cannot be used to manage policies for
  5218  // BigQuery, Pub/Sub and any external Google Cloud Platform resources synced to
  5219  // Data Catalog. Callers must have following Google IAM permission -
  5220  // `datacatalog.tagTemplates.setIamPolicy` to set policies on tag templates. -
  5221  // `datacatalog.entries.setIamPolicy` to set policies on entries. -
  5222  // `datacatalog.entryGroups.setIamPolicy` to set policies on entry groups.
  5223  //
  5224  //   - resource: REQUIRED: The resource for which the policy is being specified.
  5225  //     See Resource names (https://cloud.google.com/apis/design/resource_names)
  5226  //     for the appropriate value for this field.
  5227  func (r *ProjectsLocationsEntryGroupsService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsLocationsEntryGroupsSetIamPolicyCall {
  5228  	c := &ProjectsLocationsEntryGroupsSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5229  	c.resource = resource
  5230  	c.setiampolicyrequest = setiampolicyrequest
  5231  	return c
  5232  }
  5233  
  5234  // Fields allows partial responses to be retrieved. See
  5235  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5236  // details.
  5237  func (c *ProjectsLocationsEntryGroupsSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsEntryGroupsSetIamPolicyCall {
  5238  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5239  	return c
  5240  }
  5241  
  5242  // Context sets the context to be used in this call's Do method.
  5243  func (c *ProjectsLocationsEntryGroupsSetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsEntryGroupsSetIamPolicyCall {
  5244  	c.ctx_ = ctx
  5245  	return c
  5246  }
  5247  
  5248  // Header returns a http.Header that can be modified by the caller to add
  5249  // headers to the request.
  5250  func (c *ProjectsLocationsEntryGroupsSetIamPolicyCall) Header() http.Header {
  5251  	if c.header_ == nil {
  5252  		c.header_ = make(http.Header)
  5253  	}
  5254  	return c.header_
  5255  }
  5256  
  5257  func (c *ProjectsLocationsEntryGroupsSetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
  5258  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  5259  	var body io.Reader = nil
  5260  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest)
  5261  	if err != nil {
  5262  		return nil, err
  5263  	}
  5264  	c.urlParams_.Set("alt", alt)
  5265  	c.urlParams_.Set("prettyPrint", "false")
  5266  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:setIamPolicy")
  5267  	urls += "?" + c.urlParams_.Encode()
  5268  	req, err := http.NewRequest("POST", urls, body)
  5269  	if err != nil {
  5270  		return nil, err
  5271  	}
  5272  	req.Header = reqHeaders
  5273  	googleapi.Expand(req.URL, map[string]string{
  5274  		"resource": c.resource,
  5275  	})
  5276  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5277  }
  5278  
  5279  // Do executes the "datacatalog.projects.locations.entryGroups.setIamPolicy" call.
  5280  // Any non-2xx status code is an error. Response headers are in either
  5281  // *Policy.ServerResponse.Header or (if a response was returned at all) in
  5282  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  5283  // whether the returned error was because http.StatusNotModified was returned.
  5284  func (c *ProjectsLocationsEntryGroupsSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
  5285  	gensupport.SetOptions(c.urlParams_, opts...)
  5286  	res, err := c.doRequest("json")
  5287  	if res != nil && res.StatusCode == http.StatusNotModified {
  5288  		if res.Body != nil {
  5289  			res.Body.Close()
  5290  		}
  5291  		return nil, gensupport.WrapError(&googleapi.Error{
  5292  			Code:   res.StatusCode,
  5293  			Header: res.Header,
  5294  		})
  5295  	}
  5296  	if err != nil {
  5297  		return nil, err
  5298  	}
  5299  	defer googleapi.CloseBody(res)
  5300  	if err := googleapi.CheckResponse(res); err != nil {
  5301  		return nil, gensupport.WrapError(err)
  5302  	}
  5303  	ret := &Policy{
  5304  		ServerResponse: googleapi.ServerResponse{
  5305  			Header:         res.Header,
  5306  			HTTPStatusCode: res.StatusCode,
  5307  		},
  5308  	}
  5309  	target := &ret
  5310  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5311  		return nil, err
  5312  	}
  5313  	return ret, nil
  5314  }
  5315  
  5316  type ProjectsLocationsEntryGroupsTestIamPermissionsCall struct {
  5317  	s                         *Service
  5318  	resource                  string
  5319  	testiampermissionsrequest *TestIamPermissionsRequest
  5320  	urlParams_                gensupport.URLParams
  5321  	ctx_                      context.Context
  5322  	header_                   http.Header
  5323  }
  5324  
  5325  // TestIamPermissions: Returns the caller's permissions on a resource. If the
  5326  // resource does not exist, an empty set of permissions is returned (We don't
  5327  // return a `NOT_FOUND` error). Supported resources are: - Tag templates. -
  5328  // Entries. - Entry groups. Note, this method cannot be used to manage policies
  5329  // for BigQuery, Pub/Sub and any external Google Cloud Platform resources
  5330  // synced to Data Catalog. A caller is not required to have Google IAM
  5331  // permission to make this request.
  5332  //
  5333  //   - resource: REQUIRED: The resource for which the policy detail is being
  5334  //     requested. See Resource names
  5335  //     (https://cloud.google.com/apis/design/resource_names) for the appropriate
  5336  //     value for this field.
  5337  func (r *ProjectsLocationsEntryGroupsService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsLocationsEntryGroupsTestIamPermissionsCall {
  5338  	c := &ProjectsLocationsEntryGroupsTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5339  	c.resource = resource
  5340  	c.testiampermissionsrequest = testiampermissionsrequest
  5341  	return c
  5342  }
  5343  
  5344  // Fields allows partial responses to be retrieved. See
  5345  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5346  // details.
  5347  func (c *ProjectsLocationsEntryGroupsTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsLocationsEntryGroupsTestIamPermissionsCall {
  5348  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5349  	return c
  5350  }
  5351  
  5352  // Context sets the context to be used in this call's Do method.
  5353  func (c *ProjectsLocationsEntryGroupsTestIamPermissionsCall) Context(ctx context.Context) *ProjectsLocationsEntryGroupsTestIamPermissionsCall {
  5354  	c.ctx_ = ctx
  5355  	return c
  5356  }
  5357  
  5358  // Header returns a http.Header that can be modified by the caller to add
  5359  // headers to the request.
  5360  func (c *ProjectsLocationsEntryGroupsTestIamPermissionsCall) Header() http.Header {
  5361  	if c.header_ == nil {
  5362  		c.header_ = make(http.Header)
  5363  	}
  5364  	return c.header_
  5365  }
  5366  
  5367  func (c *ProjectsLocationsEntryGroupsTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) {
  5368  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  5369  	var body io.Reader = nil
  5370  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest)
  5371  	if err != nil {
  5372  		return nil, err
  5373  	}
  5374  	c.urlParams_.Set("alt", alt)
  5375  	c.urlParams_.Set("prettyPrint", "false")
  5376  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:testIamPermissions")
  5377  	urls += "?" + c.urlParams_.Encode()
  5378  	req, err := http.NewRequest("POST", urls, body)
  5379  	if err != nil {
  5380  		return nil, err
  5381  	}
  5382  	req.Header = reqHeaders
  5383  	googleapi.Expand(req.URL, map[string]string{
  5384  		"resource": c.resource,
  5385  	})
  5386  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5387  }
  5388  
  5389  // Do executes the "datacatalog.projects.locations.entryGroups.testIamPermissions" call.
  5390  // Any non-2xx status code is an error. Response headers are in either
  5391  // *TestIamPermissionsResponse.ServerResponse.Header or (if a response was
  5392  // returned at all) in error.(*googleapi.Error).Header. Use
  5393  // googleapi.IsNotModified to check whether the returned error was because
  5394  // http.StatusNotModified was returned.
  5395  func (c *ProjectsLocationsEntryGroupsTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) {
  5396  	gensupport.SetOptions(c.urlParams_, opts...)
  5397  	res, err := c.doRequest("json")
  5398  	if res != nil && res.StatusCode == http.StatusNotModified {
  5399  		if res.Body != nil {
  5400  			res.Body.Close()
  5401  		}
  5402  		return nil, gensupport.WrapError(&googleapi.Error{
  5403  			Code:   res.StatusCode,
  5404  			Header: res.Header,
  5405  		})
  5406  	}
  5407  	if err != nil {
  5408  		return nil, err
  5409  	}
  5410  	defer googleapi.CloseBody(res)
  5411  	if err := googleapi.CheckResponse(res); err != nil {
  5412  		return nil, gensupport.WrapError(err)
  5413  	}
  5414  	ret := &TestIamPermissionsResponse{
  5415  		ServerResponse: googleapi.ServerResponse{
  5416  			Header:         res.Header,
  5417  			HTTPStatusCode: res.StatusCode,
  5418  		},
  5419  	}
  5420  	target := &ret
  5421  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5422  		return nil, err
  5423  	}
  5424  	return ret, nil
  5425  }
  5426  
  5427  type ProjectsLocationsEntryGroupsEntriesCreateCall struct {
  5428  	s                                  *Service
  5429  	parent                             string
  5430  	googleclouddatacatalogv1beta1entry *GoogleCloudDatacatalogV1beta1Entry
  5431  	urlParams_                         gensupport.URLParams
  5432  	ctx_                               context.Context
  5433  	header_                            http.Header
  5434  }
  5435  
  5436  // Create: Creates an entry. Only entries of 'FILESET' type or user-specified
  5437  // type can be created. Users should enable the Data Catalog API in the project
  5438  // identified by the `parent` parameter (see [Data Catalog Resource Project]
  5439  // (https://cloud.google.com/data-catalog/docs/concepts/resource-project) for
  5440  // more information). A maximum of 100,000 entries may be created per entry
  5441  // group.
  5442  //
  5443  //   - parent: The name of the entry group this entry is in. Example: *
  5444  //     projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}
  5445  //     Note that this Entry and its child resources may not actually be stored in
  5446  //     the location in this name.
  5447  func (r *ProjectsLocationsEntryGroupsEntriesService) Create(parent string, googleclouddatacatalogv1beta1entry *GoogleCloudDatacatalogV1beta1Entry) *ProjectsLocationsEntryGroupsEntriesCreateCall {
  5448  	c := &ProjectsLocationsEntryGroupsEntriesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5449  	c.parent = parent
  5450  	c.googleclouddatacatalogv1beta1entry = googleclouddatacatalogv1beta1entry
  5451  	return c
  5452  }
  5453  
  5454  // EntryId sets the optional parameter "entryId": Required. The id of the entry
  5455  // to create.
  5456  func (c *ProjectsLocationsEntryGroupsEntriesCreateCall) EntryId(entryId string) *ProjectsLocationsEntryGroupsEntriesCreateCall {
  5457  	c.urlParams_.Set("entryId", entryId)
  5458  	return c
  5459  }
  5460  
  5461  // Fields allows partial responses to be retrieved. See
  5462  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5463  // details.
  5464  func (c *ProjectsLocationsEntryGroupsEntriesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsEntryGroupsEntriesCreateCall {
  5465  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5466  	return c
  5467  }
  5468  
  5469  // Context sets the context to be used in this call's Do method.
  5470  func (c *ProjectsLocationsEntryGroupsEntriesCreateCall) Context(ctx context.Context) *ProjectsLocationsEntryGroupsEntriesCreateCall {
  5471  	c.ctx_ = ctx
  5472  	return c
  5473  }
  5474  
  5475  // Header returns a http.Header that can be modified by the caller to add
  5476  // headers to the request.
  5477  func (c *ProjectsLocationsEntryGroupsEntriesCreateCall) Header() http.Header {
  5478  	if c.header_ == nil {
  5479  		c.header_ = make(http.Header)
  5480  	}
  5481  	return c.header_
  5482  }
  5483  
  5484  func (c *ProjectsLocationsEntryGroupsEntriesCreateCall) doRequest(alt string) (*http.Response, error) {
  5485  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  5486  	var body io.Reader = nil
  5487  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddatacatalogv1beta1entry)
  5488  	if err != nil {
  5489  		return nil, err
  5490  	}
  5491  	c.urlParams_.Set("alt", alt)
  5492  	c.urlParams_.Set("prettyPrint", "false")
  5493  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/entries")
  5494  	urls += "?" + c.urlParams_.Encode()
  5495  	req, err := http.NewRequest("POST", urls, body)
  5496  	if err != nil {
  5497  		return nil, err
  5498  	}
  5499  	req.Header = reqHeaders
  5500  	googleapi.Expand(req.URL, map[string]string{
  5501  		"parent": c.parent,
  5502  	})
  5503  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5504  }
  5505  
  5506  // Do executes the "datacatalog.projects.locations.entryGroups.entries.create" call.
  5507  // Any non-2xx status code is an error. Response headers are in either
  5508  // *GoogleCloudDatacatalogV1beta1Entry.ServerResponse.Header or (if a response
  5509  // was returned at all) in error.(*googleapi.Error).Header. Use
  5510  // googleapi.IsNotModified to check whether the returned error was because
  5511  // http.StatusNotModified was returned.
  5512  func (c *ProjectsLocationsEntryGroupsEntriesCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogV1beta1Entry, error) {
  5513  	gensupport.SetOptions(c.urlParams_, opts...)
  5514  	res, err := c.doRequest("json")
  5515  	if res != nil && res.StatusCode == http.StatusNotModified {
  5516  		if res.Body != nil {
  5517  			res.Body.Close()
  5518  		}
  5519  		return nil, gensupport.WrapError(&googleapi.Error{
  5520  			Code:   res.StatusCode,
  5521  			Header: res.Header,
  5522  		})
  5523  	}
  5524  	if err != nil {
  5525  		return nil, err
  5526  	}
  5527  	defer googleapi.CloseBody(res)
  5528  	if err := googleapi.CheckResponse(res); err != nil {
  5529  		return nil, gensupport.WrapError(err)
  5530  	}
  5531  	ret := &GoogleCloudDatacatalogV1beta1Entry{
  5532  		ServerResponse: googleapi.ServerResponse{
  5533  			Header:         res.Header,
  5534  			HTTPStatusCode: res.StatusCode,
  5535  		},
  5536  	}
  5537  	target := &ret
  5538  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5539  		return nil, err
  5540  	}
  5541  	return ret, nil
  5542  }
  5543  
  5544  type ProjectsLocationsEntryGroupsEntriesDeleteCall struct {
  5545  	s          *Service
  5546  	name       string
  5547  	urlParams_ gensupport.URLParams
  5548  	ctx_       context.Context
  5549  	header_    http.Header
  5550  }
  5551  
  5552  // Delete: Deletes an existing entry. Only entries created through CreateEntry
  5553  // method can be deleted. Users should enable the Data Catalog API in the
  5554  // project identified by the `name` parameter (see [Data Catalog Resource
  5555  // Project]
  5556  // (https://cloud.google.com/data-catalog/docs/concepts/resource-project) for
  5557  // more information).
  5558  //
  5559  //   - name: The name of the entry. Example: *
  5560  //     projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/ent
  5561  //     ries/{entry_id}.
  5562  func (r *ProjectsLocationsEntryGroupsEntriesService) Delete(name string) *ProjectsLocationsEntryGroupsEntriesDeleteCall {
  5563  	c := &ProjectsLocationsEntryGroupsEntriesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5564  	c.name = name
  5565  	return c
  5566  }
  5567  
  5568  // Fields allows partial responses to be retrieved. See
  5569  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5570  // details.
  5571  func (c *ProjectsLocationsEntryGroupsEntriesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsEntryGroupsEntriesDeleteCall {
  5572  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5573  	return c
  5574  }
  5575  
  5576  // Context sets the context to be used in this call's Do method.
  5577  func (c *ProjectsLocationsEntryGroupsEntriesDeleteCall) Context(ctx context.Context) *ProjectsLocationsEntryGroupsEntriesDeleteCall {
  5578  	c.ctx_ = ctx
  5579  	return c
  5580  }
  5581  
  5582  // Header returns a http.Header that can be modified by the caller to add
  5583  // headers to the request.
  5584  func (c *ProjectsLocationsEntryGroupsEntriesDeleteCall) Header() http.Header {
  5585  	if c.header_ == nil {
  5586  		c.header_ = make(http.Header)
  5587  	}
  5588  	return c.header_
  5589  }
  5590  
  5591  func (c *ProjectsLocationsEntryGroupsEntriesDeleteCall) doRequest(alt string) (*http.Response, error) {
  5592  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  5593  	var body io.Reader = nil
  5594  	c.urlParams_.Set("alt", alt)
  5595  	c.urlParams_.Set("prettyPrint", "false")
  5596  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
  5597  	urls += "?" + c.urlParams_.Encode()
  5598  	req, err := http.NewRequest("DELETE", urls, body)
  5599  	if err != nil {
  5600  		return nil, err
  5601  	}
  5602  	req.Header = reqHeaders
  5603  	googleapi.Expand(req.URL, map[string]string{
  5604  		"name": c.name,
  5605  	})
  5606  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5607  }
  5608  
  5609  // Do executes the "datacatalog.projects.locations.entryGroups.entries.delete" call.
  5610  // Any non-2xx status code is an error. Response headers are in either
  5611  // *Empty.ServerResponse.Header or (if a response was returned at all) in
  5612  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  5613  // whether the returned error was because http.StatusNotModified was returned.
  5614  func (c *ProjectsLocationsEntryGroupsEntriesDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
  5615  	gensupport.SetOptions(c.urlParams_, opts...)
  5616  	res, err := c.doRequest("json")
  5617  	if res != nil && res.StatusCode == http.StatusNotModified {
  5618  		if res.Body != nil {
  5619  			res.Body.Close()
  5620  		}
  5621  		return nil, gensupport.WrapError(&googleapi.Error{
  5622  			Code:   res.StatusCode,
  5623  			Header: res.Header,
  5624  		})
  5625  	}
  5626  	if err != nil {
  5627  		return nil, err
  5628  	}
  5629  	defer googleapi.CloseBody(res)
  5630  	if err := googleapi.CheckResponse(res); err != nil {
  5631  		return nil, gensupport.WrapError(err)
  5632  	}
  5633  	ret := &Empty{
  5634  		ServerResponse: googleapi.ServerResponse{
  5635  			Header:         res.Header,
  5636  			HTTPStatusCode: res.StatusCode,
  5637  		},
  5638  	}
  5639  	target := &ret
  5640  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5641  		return nil, err
  5642  	}
  5643  	return ret, nil
  5644  }
  5645  
  5646  type ProjectsLocationsEntryGroupsEntriesGetCall struct {
  5647  	s            *Service
  5648  	name         string
  5649  	urlParams_   gensupport.URLParams
  5650  	ifNoneMatch_ string
  5651  	ctx_         context.Context
  5652  	header_      http.Header
  5653  }
  5654  
  5655  // Get: Gets an entry.
  5656  //
  5657  //   - name: The name of the entry. Example: *
  5658  //     projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/ent
  5659  //     ries/{entry_id}.
  5660  func (r *ProjectsLocationsEntryGroupsEntriesService) Get(name string) *ProjectsLocationsEntryGroupsEntriesGetCall {
  5661  	c := &ProjectsLocationsEntryGroupsEntriesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5662  	c.name = name
  5663  	return c
  5664  }
  5665  
  5666  // Fields allows partial responses to be retrieved. See
  5667  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5668  // details.
  5669  func (c *ProjectsLocationsEntryGroupsEntriesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsEntryGroupsEntriesGetCall {
  5670  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5671  	return c
  5672  }
  5673  
  5674  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  5675  // object's ETag matches the given value. This is useful for getting updates
  5676  // only after the object has changed since the last request.
  5677  func (c *ProjectsLocationsEntryGroupsEntriesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsEntryGroupsEntriesGetCall {
  5678  	c.ifNoneMatch_ = entityTag
  5679  	return c
  5680  }
  5681  
  5682  // Context sets the context to be used in this call's Do method.
  5683  func (c *ProjectsLocationsEntryGroupsEntriesGetCall) Context(ctx context.Context) *ProjectsLocationsEntryGroupsEntriesGetCall {
  5684  	c.ctx_ = ctx
  5685  	return c
  5686  }
  5687  
  5688  // Header returns a http.Header that can be modified by the caller to add
  5689  // headers to the request.
  5690  func (c *ProjectsLocationsEntryGroupsEntriesGetCall) Header() http.Header {
  5691  	if c.header_ == nil {
  5692  		c.header_ = make(http.Header)
  5693  	}
  5694  	return c.header_
  5695  }
  5696  
  5697  func (c *ProjectsLocationsEntryGroupsEntriesGetCall) doRequest(alt string) (*http.Response, error) {
  5698  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  5699  	if c.ifNoneMatch_ != "" {
  5700  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  5701  	}
  5702  	var body io.Reader = nil
  5703  	c.urlParams_.Set("alt", alt)
  5704  	c.urlParams_.Set("prettyPrint", "false")
  5705  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
  5706  	urls += "?" + c.urlParams_.Encode()
  5707  	req, err := http.NewRequest("GET", urls, body)
  5708  	if err != nil {
  5709  		return nil, err
  5710  	}
  5711  	req.Header = reqHeaders
  5712  	googleapi.Expand(req.URL, map[string]string{
  5713  		"name": c.name,
  5714  	})
  5715  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5716  }
  5717  
  5718  // Do executes the "datacatalog.projects.locations.entryGroups.entries.get" call.
  5719  // Any non-2xx status code is an error. Response headers are in either
  5720  // *GoogleCloudDatacatalogV1beta1Entry.ServerResponse.Header or (if a response
  5721  // was returned at all) in error.(*googleapi.Error).Header. Use
  5722  // googleapi.IsNotModified to check whether the returned error was because
  5723  // http.StatusNotModified was returned.
  5724  func (c *ProjectsLocationsEntryGroupsEntriesGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogV1beta1Entry, error) {
  5725  	gensupport.SetOptions(c.urlParams_, opts...)
  5726  	res, err := c.doRequest("json")
  5727  	if res != nil && res.StatusCode == http.StatusNotModified {
  5728  		if res.Body != nil {
  5729  			res.Body.Close()
  5730  		}
  5731  		return nil, gensupport.WrapError(&googleapi.Error{
  5732  			Code:   res.StatusCode,
  5733  			Header: res.Header,
  5734  		})
  5735  	}
  5736  	if err != nil {
  5737  		return nil, err
  5738  	}
  5739  	defer googleapi.CloseBody(res)
  5740  	if err := googleapi.CheckResponse(res); err != nil {
  5741  		return nil, gensupport.WrapError(err)
  5742  	}
  5743  	ret := &GoogleCloudDatacatalogV1beta1Entry{
  5744  		ServerResponse: googleapi.ServerResponse{
  5745  			Header:         res.Header,
  5746  			HTTPStatusCode: res.StatusCode,
  5747  		},
  5748  	}
  5749  	target := &ret
  5750  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5751  		return nil, err
  5752  	}
  5753  	return ret, nil
  5754  }
  5755  
  5756  type ProjectsLocationsEntryGroupsEntriesGetIamPolicyCall struct {
  5757  	s                   *Service
  5758  	resource            string
  5759  	getiampolicyrequest *GetIamPolicyRequest
  5760  	urlParams_          gensupport.URLParams
  5761  	ctx_                context.Context
  5762  	header_             http.Header
  5763  }
  5764  
  5765  // GetIamPolicy: Gets the access control policy for a resource. A `NOT_FOUND`
  5766  // error is returned if the resource does not exist. An empty policy is
  5767  // returned if the resource exists but does not have a policy set on it.
  5768  // Supported resources are: - Tag templates. - Entries. - Entry groups. Note,
  5769  // this method cannot be used to manage policies for BigQuery, Pub/Sub and any
  5770  // external Google Cloud Platform resources synced to Data Catalog. Callers
  5771  // must have following Google IAM permission -
  5772  // `datacatalog.tagTemplates.getIamPolicy` to get policies on tag templates. -
  5773  // `datacatalog.entries.getIamPolicy` to get policies on entries. -
  5774  // `datacatalog.entryGroups.getIamPolicy` to get policies on entry groups.
  5775  //
  5776  //   - resource: REQUIRED: The resource for which the policy is being requested.
  5777  //     See Resource names (https://cloud.google.com/apis/design/resource_names)
  5778  //     for the appropriate value for this field.
  5779  func (r *ProjectsLocationsEntryGroupsEntriesService) GetIamPolicy(resource string, getiampolicyrequest *GetIamPolicyRequest) *ProjectsLocationsEntryGroupsEntriesGetIamPolicyCall {
  5780  	c := &ProjectsLocationsEntryGroupsEntriesGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5781  	c.resource = resource
  5782  	c.getiampolicyrequest = getiampolicyrequest
  5783  	return c
  5784  }
  5785  
  5786  // Fields allows partial responses to be retrieved. See
  5787  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5788  // details.
  5789  func (c *ProjectsLocationsEntryGroupsEntriesGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsEntryGroupsEntriesGetIamPolicyCall {
  5790  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5791  	return c
  5792  }
  5793  
  5794  // Context sets the context to be used in this call's Do method.
  5795  func (c *ProjectsLocationsEntryGroupsEntriesGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsEntryGroupsEntriesGetIamPolicyCall {
  5796  	c.ctx_ = ctx
  5797  	return c
  5798  }
  5799  
  5800  // Header returns a http.Header that can be modified by the caller to add
  5801  // headers to the request.
  5802  func (c *ProjectsLocationsEntryGroupsEntriesGetIamPolicyCall) Header() http.Header {
  5803  	if c.header_ == nil {
  5804  		c.header_ = make(http.Header)
  5805  	}
  5806  	return c.header_
  5807  }
  5808  
  5809  func (c *ProjectsLocationsEntryGroupsEntriesGetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
  5810  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  5811  	var body io.Reader = nil
  5812  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.getiampolicyrequest)
  5813  	if err != nil {
  5814  		return nil, err
  5815  	}
  5816  	c.urlParams_.Set("alt", alt)
  5817  	c.urlParams_.Set("prettyPrint", "false")
  5818  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:getIamPolicy")
  5819  	urls += "?" + c.urlParams_.Encode()
  5820  	req, err := http.NewRequest("POST", urls, body)
  5821  	if err != nil {
  5822  		return nil, err
  5823  	}
  5824  	req.Header = reqHeaders
  5825  	googleapi.Expand(req.URL, map[string]string{
  5826  		"resource": c.resource,
  5827  	})
  5828  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5829  }
  5830  
  5831  // Do executes the "datacatalog.projects.locations.entryGroups.entries.getIamPolicy" call.
  5832  // Any non-2xx status code is an error. Response headers are in either
  5833  // *Policy.ServerResponse.Header or (if a response was returned at all) in
  5834  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  5835  // whether the returned error was because http.StatusNotModified was returned.
  5836  func (c *ProjectsLocationsEntryGroupsEntriesGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
  5837  	gensupport.SetOptions(c.urlParams_, opts...)
  5838  	res, err := c.doRequest("json")
  5839  	if res != nil && res.StatusCode == http.StatusNotModified {
  5840  		if res.Body != nil {
  5841  			res.Body.Close()
  5842  		}
  5843  		return nil, gensupport.WrapError(&googleapi.Error{
  5844  			Code:   res.StatusCode,
  5845  			Header: res.Header,
  5846  		})
  5847  	}
  5848  	if err != nil {
  5849  		return nil, err
  5850  	}
  5851  	defer googleapi.CloseBody(res)
  5852  	if err := googleapi.CheckResponse(res); err != nil {
  5853  		return nil, gensupport.WrapError(err)
  5854  	}
  5855  	ret := &Policy{
  5856  		ServerResponse: googleapi.ServerResponse{
  5857  			Header:         res.Header,
  5858  			HTTPStatusCode: res.StatusCode,
  5859  		},
  5860  	}
  5861  	target := &ret
  5862  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5863  		return nil, err
  5864  	}
  5865  	return ret, nil
  5866  }
  5867  
  5868  type ProjectsLocationsEntryGroupsEntriesListCall struct {
  5869  	s            *Service
  5870  	parent       string
  5871  	urlParams_   gensupport.URLParams
  5872  	ifNoneMatch_ string
  5873  	ctx_         context.Context
  5874  	header_      http.Header
  5875  }
  5876  
  5877  // List: Lists entries.
  5878  //
  5879  //   - parent: The name of the entry group that contains the entries, which can
  5880  //     be provided in URL format. Example: *
  5881  //     projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}.
  5882  func (r *ProjectsLocationsEntryGroupsEntriesService) List(parent string) *ProjectsLocationsEntryGroupsEntriesListCall {
  5883  	c := &ProjectsLocationsEntryGroupsEntriesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5884  	c.parent = parent
  5885  	return c
  5886  }
  5887  
  5888  // PageSize sets the optional parameter "pageSize": The maximum number of items
  5889  // to return. Default is 10. Max limit is 1000. Throws an invalid argument for
  5890  // `page_size > 1000`.
  5891  func (c *ProjectsLocationsEntryGroupsEntriesListCall) PageSize(pageSize int64) *ProjectsLocationsEntryGroupsEntriesListCall {
  5892  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  5893  	return c
  5894  }
  5895  
  5896  // PageToken sets the optional parameter "pageToken": Token that specifies
  5897  // which page is requested. If empty, the first page is returned.
  5898  func (c *ProjectsLocationsEntryGroupsEntriesListCall) PageToken(pageToken string) *ProjectsLocationsEntryGroupsEntriesListCall {
  5899  	c.urlParams_.Set("pageToken", pageToken)
  5900  	return c
  5901  }
  5902  
  5903  // ReadMask sets the optional parameter "readMask": The fields to return for
  5904  // each Entry. If not set or empty, all fields are returned. For example,
  5905  // setting read_mask to contain only one path "name" will cause ListEntries to
  5906  // return a list of Entries with only "name" field.
  5907  func (c *ProjectsLocationsEntryGroupsEntriesListCall) ReadMask(readMask string) *ProjectsLocationsEntryGroupsEntriesListCall {
  5908  	c.urlParams_.Set("readMask", readMask)
  5909  	return c
  5910  }
  5911  
  5912  // Fields allows partial responses to be retrieved. See
  5913  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5914  // details.
  5915  func (c *ProjectsLocationsEntryGroupsEntriesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsEntryGroupsEntriesListCall {
  5916  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5917  	return c
  5918  }
  5919  
  5920  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  5921  // object's ETag matches the given value. This is useful for getting updates
  5922  // only after the object has changed since the last request.
  5923  func (c *ProjectsLocationsEntryGroupsEntriesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsEntryGroupsEntriesListCall {
  5924  	c.ifNoneMatch_ = entityTag
  5925  	return c
  5926  }
  5927  
  5928  // Context sets the context to be used in this call's Do method.
  5929  func (c *ProjectsLocationsEntryGroupsEntriesListCall) Context(ctx context.Context) *ProjectsLocationsEntryGroupsEntriesListCall {
  5930  	c.ctx_ = ctx
  5931  	return c
  5932  }
  5933  
  5934  // Header returns a http.Header that can be modified by the caller to add
  5935  // headers to the request.
  5936  func (c *ProjectsLocationsEntryGroupsEntriesListCall) Header() http.Header {
  5937  	if c.header_ == nil {
  5938  		c.header_ = make(http.Header)
  5939  	}
  5940  	return c.header_
  5941  }
  5942  
  5943  func (c *ProjectsLocationsEntryGroupsEntriesListCall) doRequest(alt string) (*http.Response, error) {
  5944  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  5945  	if c.ifNoneMatch_ != "" {
  5946  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  5947  	}
  5948  	var body io.Reader = nil
  5949  	c.urlParams_.Set("alt", alt)
  5950  	c.urlParams_.Set("prettyPrint", "false")
  5951  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/entries")
  5952  	urls += "?" + c.urlParams_.Encode()
  5953  	req, err := http.NewRequest("GET", urls, body)
  5954  	if err != nil {
  5955  		return nil, err
  5956  	}
  5957  	req.Header = reqHeaders
  5958  	googleapi.Expand(req.URL, map[string]string{
  5959  		"parent": c.parent,
  5960  	})
  5961  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5962  }
  5963  
  5964  // Do executes the "datacatalog.projects.locations.entryGroups.entries.list" call.
  5965  // Any non-2xx status code is an error. Response headers are in either
  5966  // *GoogleCloudDatacatalogV1beta1ListEntriesResponse.ServerResponse.Header or
  5967  // (if a response was returned at all) in error.(*googleapi.Error).Header. Use
  5968  // googleapi.IsNotModified to check whether the returned error was because
  5969  // http.StatusNotModified was returned.
  5970  func (c *ProjectsLocationsEntryGroupsEntriesListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogV1beta1ListEntriesResponse, error) {
  5971  	gensupport.SetOptions(c.urlParams_, opts...)
  5972  	res, err := c.doRequest("json")
  5973  	if res != nil && res.StatusCode == http.StatusNotModified {
  5974  		if res.Body != nil {
  5975  			res.Body.Close()
  5976  		}
  5977  		return nil, gensupport.WrapError(&googleapi.Error{
  5978  			Code:   res.StatusCode,
  5979  			Header: res.Header,
  5980  		})
  5981  	}
  5982  	if err != nil {
  5983  		return nil, err
  5984  	}
  5985  	defer googleapi.CloseBody(res)
  5986  	if err := googleapi.CheckResponse(res); err != nil {
  5987  		return nil, gensupport.WrapError(err)
  5988  	}
  5989  	ret := &GoogleCloudDatacatalogV1beta1ListEntriesResponse{
  5990  		ServerResponse: googleapi.ServerResponse{
  5991  			Header:         res.Header,
  5992  			HTTPStatusCode: res.StatusCode,
  5993  		},
  5994  	}
  5995  	target := &ret
  5996  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5997  		return nil, err
  5998  	}
  5999  	return ret, nil
  6000  }
  6001  
  6002  // Pages invokes f for each page of results.
  6003  // A non-nil error returned from f will halt the iteration.
  6004  // The provided context supersedes any context provided to the Context method.
  6005  func (c *ProjectsLocationsEntryGroupsEntriesListCall) Pages(ctx context.Context, f func(*GoogleCloudDatacatalogV1beta1ListEntriesResponse) error) error {
  6006  	c.ctx_ = ctx
  6007  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  6008  	for {
  6009  		x, err := c.Do()
  6010  		if err != nil {
  6011  			return err
  6012  		}
  6013  		if err := f(x); err != nil {
  6014  			return err
  6015  		}
  6016  		if x.NextPageToken == "" {
  6017  			return nil
  6018  		}
  6019  		c.PageToken(x.NextPageToken)
  6020  	}
  6021  }
  6022  
  6023  type ProjectsLocationsEntryGroupsEntriesPatchCall struct {
  6024  	s                                  *Service
  6025  	name                               string
  6026  	googleclouddatacatalogv1beta1entry *GoogleCloudDatacatalogV1beta1Entry
  6027  	urlParams_                         gensupport.URLParams
  6028  	ctx_                               context.Context
  6029  	header_                            http.Header
  6030  }
  6031  
  6032  // Patch: Updates an existing entry. Users should enable the Data Catalog API
  6033  // in the project identified by the `entry.name` parameter (see [Data Catalog
  6034  // Resource Project]
  6035  // (https://cloud.google.com/data-catalog/docs/concepts/resource-project) for
  6036  // more information).
  6037  //
  6038  //   - name: Output only. Identifier. The Data Catalog resource name of the entry
  6039  //     in URL format. Example: *
  6040  //     projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/ent
  6041  //     ries/{entry_id} Note that this Entry and its child resources may not
  6042  //     actually be stored in the location in this name.
  6043  func (r *ProjectsLocationsEntryGroupsEntriesService) Patch(name string, googleclouddatacatalogv1beta1entry *GoogleCloudDatacatalogV1beta1Entry) *ProjectsLocationsEntryGroupsEntriesPatchCall {
  6044  	c := &ProjectsLocationsEntryGroupsEntriesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6045  	c.name = name
  6046  	c.googleclouddatacatalogv1beta1entry = googleclouddatacatalogv1beta1entry
  6047  	return c
  6048  }
  6049  
  6050  // UpdateMask sets the optional parameter "updateMask": Names of fields whose
  6051  // values to overwrite on an entry. If this parameter is absent or empty, all
  6052  // modifiable fields are overwritten. If such fields are non-required and
  6053  // omitted in the request body, their values are emptied. The following fields
  6054  // are modifiable: * For entries with type `DATA_STREAM`: * `schema` * For
  6055  // entries with type `FILESET`: * `schema` * `display_name` * `description` *
  6056  // `gcs_fileset_spec` * `gcs_fileset_spec.file_patterns` * For entries with
  6057  // `user_specified_type`: * `schema` * `display_name` * `description` *
  6058  // `user_specified_type` * `user_specified_system` * `linked_resource` *
  6059  // `source_system_timestamps`
  6060  func (c *ProjectsLocationsEntryGroupsEntriesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsEntryGroupsEntriesPatchCall {
  6061  	c.urlParams_.Set("updateMask", updateMask)
  6062  	return c
  6063  }
  6064  
  6065  // Fields allows partial responses to be retrieved. See
  6066  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6067  // details.
  6068  func (c *ProjectsLocationsEntryGroupsEntriesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsEntryGroupsEntriesPatchCall {
  6069  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6070  	return c
  6071  }
  6072  
  6073  // Context sets the context to be used in this call's Do method.
  6074  func (c *ProjectsLocationsEntryGroupsEntriesPatchCall) Context(ctx context.Context) *ProjectsLocationsEntryGroupsEntriesPatchCall {
  6075  	c.ctx_ = ctx
  6076  	return c
  6077  }
  6078  
  6079  // Header returns a http.Header that can be modified by the caller to add
  6080  // headers to the request.
  6081  func (c *ProjectsLocationsEntryGroupsEntriesPatchCall) Header() http.Header {
  6082  	if c.header_ == nil {
  6083  		c.header_ = make(http.Header)
  6084  	}
  6085  	return c.header_
  6086  }
  6087  
  6088  func (c *ProjectsLocationsEntryGroupsEntriesPatchCall) doRequest(alt string) (*http.Response, error) {
  6089  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  6090  	var body io.Reader = nil
  6091  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddatacatalogv1beta1entry)
  6092  	if err != nil {
  6093  		return nil, err
  6094  	}
  6095  	c.urlParams_.Set("alt", alt)
  6096  	c.urlParams_.Set("prettyPrint", "false")
  6097  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
  6098  	urls += "?" + c.urlParams_.Encode()
  6099  	req, err := http.NewRequest("PATCH", urls, body)
  6100  	if err != nil {
  6101  		return nil, err
  6102  	}
  6103  	req.Header = reqHeaders
  6104  	googleapi.Expand(req.URL, map[string]string{
  6105  		"name": c.name,
  6106  	})
  6107  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6108  }
  6109  
  6110  // Do executes the "datacatalog.projects.locations.entryGroups.entries.patch" call.
  6111  // Any non-2xx status code is an error. Response headers are in either
  6112  // *GoogleCloudDatacatalogV1beta1Entry.ServerResponse.Header or (if a response
  6113  // was returned at all) in error.(*googleapi.Error).Header. Use
  6114  // googleapi.IsNotModified to check whether the returned error was because
  6115  // http.StatusNotModified was returned.
  6116  func (c *ProjectsLocationsEntryGroupsEntriesPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogV1beta1Entry, error) {
  6117  	gensupport.SetOptions(c.urlParams_, opts...)
  6118  	res, err := c.doRequest("json")
  6119  	if res != nil && res.StatusCode == http.StatusNotModified {
  6120  		if res.Body != nil {
  6121  			res.Body.Close()
  6122  		}
  6123  		return nil, gensupport.WrapError(&googleapi.Error{
  6124  			Code:   res.StatusCode,
  6125  			Header: res.Header,
  6126  		})
  6127  	}
  6128  	if err != nil {
  6129  		return nil, err
  6130  	}
  6131  	defer googleapi.CloseBody(res)
  6132  	if err := googleapi.CheckResponse(res); err != nil {
  6133  		return nil, gensupport.WrapError(err)
  6134  	}
  6135  	ret := &GoogleCloudDatacatalogV1beta1Entry{
  6136  		ServerResponse: googleapi.ServerResponse{
  6137  			Header:         res.Header,
  6138  			HTTPStatusCode: res.StatusCode,
  6139  		},
  6140  	}
  6141  	target := &ret
  6142  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6143  		return nil, err
  6144  	}
  6145  	return ret, nil
  6146  }
  6147  
  6148  type ProjectsLocationsEntryGroupsEntriesTestIamPermissionsCall struct {
  6149  	s                         *Service
  6150  	resource                  string
  6151  	testiampermissionsrequest *TestIamPermissionsRequest
  6152  	urlParams_                gensupport.URLParams
  6153  	ctx_                      context.Context
  6154  	header_                   http.Header
  6155  }
  6156  
  6157  // TestIamPermissions: Returns the caller's permissions on a resource. If the
  6158  // resource does not exist, an empty set of permissions is returned (We don't
  6159  // return a `NOT_FOUND` error). Supported resources are: - Tag templates. -
  6160  // Entries. - Entry groups. Note, this method cannot be used to manage policies
  6161  // for BigQuery, Pub/Sub and any external Google Cloud Platform resources
  6162  // synced to Data Catalog. A caller is not required to have Google IAM
  6163  // permission to make this request.
  6164  //
  6165  //   - resource: REQUIRED: The resource for which the policy detail is being
  6166  //     requested. See Resource names
  6167  //     (https://cloud.google.com/apis/design/resource_names) for the appropriate
  6168  //     value for this field.
  6169  func (r *ProjectsLocationsEntryGroupsEntriesService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsLocationsEntryGroupsEntriesTestIamPermissionsCall {
  6170  	c := &ProjectsLocationsEntryGroupsEntriesTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6171  	c.resource = resource
  6172  	c.testiampermissionsrequest = testiampermissionsrequest
  6173  	return c
  6174  }
  6175  
  6176  // Fields allows partial responses to be retrieved. See
  6177  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6178  // details.
  6179  func (c *ProjectsLocationsEntryGroupsEntriesTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsLocationsEntryGroupsEntriesTestIamPermissionsCall {
  6180  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6181  	return c
  6182  }
  6183  
  6184  // Context sets the context to be used in this call's Do method.
  6185  func (c *ProjectsLocationsEntryGroupsEntriesTestIamPermissionsCall) Context(ctx context.Context) *ProjectsLocationsEntryGroupsEntriesTestIamPermissionsCall {
  6186  	c.ctx_ = ctx
  6187  	return c
  6188  }
  6189  
  6190  // Header returns a http.Header that can be modified by the caller to add
  6191  // headers to the request.
  6192  func (c *ProjectsLocationsEntryGroupsEntriesTestIamPermissionsCall) Header() http.Header {
  6193  	if c.header_ == nil {
  6194  		c.header_ = make(http.Header)
  6195  	}
  6196  	return c.header_
  6197  }
  6198  
  6199  func (c *ProjectsLocationsEntryGroupsEntriesTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) {
  6200  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  6201  	var body io.Reader = nil
  6202  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest)
  6203  	if err != nil {
  6204  		return nil, err
  6205  	}
  6206  	c.urlParams_.Set("alt", alt)
  6207  	c.urlParams_.Set("prettyPrint", "false")
  6208  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:testIamPermissions")
  6209  	urls += "?" + c.urlParams_.Encode()
  6210  	req, err := http.NewRequest("POST", urls, body)
  6211  	if err != nil {
  6212  		return nil, err
  6213  	}
  6214  	req.Header = reqHeaders
  6215  	googleapi.Expand(req.URL, map[string]string{
  6216  		"resource": c.resource,
  6217  	})
  6218  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6219  }
  6220  
  6221  // Do executes the "datacatalog.projects.locations.entryGroups.entries.testIamPermissions" call.
  6222  // Any non-2xx status code is an error. Response headers are in either
  6223  // *TestIamPermissionsResponse.ServerResponse.Header or (if a response was
  6224  // returned at all) in error.(*googleapi.Error).Header. Use
  6225  // googleapi.IsNotModified to check whether the returned error was because
  6226  // http.StatusNotModified was returned.
  6227  func (c *ProjectsLocationsEntryGroupsEntriesTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) {
  6228  	gensupport.SetOptions(c.urlParams_, opts...)
  6229  	res, err := c.doRequest("json")
  6230  	if res != nil && res.StatusCode == http.StatusNotModified {
  6231  		if res.Body != nil {
  6232  			res.Body.Close()
  6233  		}
  6234  		return nil, gensupport.WrapError(&googleapi.Error{
  6235  			Code:   res.StatusCode,
  6236  			Header: res.Header,
  6237  		})
  6238  	}
  6239  	if err != nil {
  6240  		return nil, err
  6241  	}
  6242  	defer googleapi.CloseBody(res)
  6243  	if err := googleapi.CheckResponse(res); err != nil {
  6244  		return nil, gensupport.WrapError(err)
  6245  	}
  6246  	ret := &TestIamPermissionsResponse{
  6247  		ServerResponse: googleapi.ServerResponse{
  6248  			Header:         res.Header,
  6249  			HTTPStatusCode: res.StatusCode,
  6250  		},
  6251  	}
  6252  	target := &ret
  6253  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6254  		return nil, err
  6255  	}
  6256  	return ret, nil
  6257  }
  6258  
  6259  type ProjectsLocationsEntryGroupsEntriesTagsCreateCall struct {
  6260  	s                                *Service
  6261  	parent                           string
  6262  	googleclouddatacatalogv1beta1tag *GoogleCloudDatacatalogV1beta1Tag
  6263  	urlParams_                       gensupport.URLParams
  6264  	ctx_                             context.Context
  6265  	header_                          http.Header
  6266  }
  6267  
  6268  // Create: Creates a tag on an Entry. Note: The project identified by the
  6269  // `parent` parameter for the tag
  6270  // (https://cloud.google.com/data-catalog/docs/reference/rest/v1beta1/projects.locations.entryGroups.entries.tags/create#path-parameters)
  6271  // and the tag template
  6272  // (https://cloud.google.com/data-catalog/docs/reference/rest/v1beta1/projects.locations.tagTemplates/create#path-parameters)
  6273  // used to create the tag must be from the same organization.
  6274  //
  6275  //   - parent: The name of the resource to attach this tag to. Tags can be
  6276  //     attached to Entries. Example: *
  6277  //     projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/ent
  6278  //     ries/{entry_id} Note that this Tag and its child resources may not
  6279  //     actually be stored in the location in this name.
  6280  func (r *ProjectsLocationsEntryGroupsEntriesTagsService) Create(parent string, googleclouddatacatalogv1beta1tag *GoogleCloudDatacatalogV1beta1Tag) *ProjectsLocationsEntryGroupsEntriesTagsCreateCall {
  6281  	c := &ProjectsLocationsEntryGroupsEntriesTagsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6282  	c.parent = parent
  6283  	c.googleclouddatacatalogv1beta1tag = googleclouddatacatalogv1beta1tag
  6284  	return c
  6285  }
  6286  
  6287  // Fields allows partial responses to be retrieved. See
  6288  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6289  // details.
  6290  func (c *ProjectsLocationsEntryGroupsEntriesTagsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsEntryGroupsEntriesTagsCreateCall {
  6291  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6292  	return c
  6293  }
  6294  
  6295  // Context sets the context to be used in this call's Do method.
  6296  func (c *ProjectsLocationsEntryGroupsEntriesTagsCreateCall) Context(ctx context.Context) *ProjectsLocationsEntryGroupsEntriesTagsCreateCall {
  6297  	c.ctx_ = ctx
  6298  	return c
  6299  }
  6300  
  6301  // Header returns a http.Header that can be modified by the caller to add
  6302  // headers to the request.
  6303  func (c *ProjectsLocationsEntryGroupsEntriesTagsCreateCall) Header() http.Header {
  6304  	if c.header_ == nil {
  6305  		c.header_ = make(http.Header)
  6306  	}
  6307  	return c.header_
  6308  }
  6309  
  6310  func (c *ProjectsLocationsEntryGroupsEntriesTagsCreateCall) doRequest(alt string) (*http.Response, error) {
  6311  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  6312  	var body io.Reader = nil
  6313  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddatacatalogv1beta1tag)
  6314  	if err != nil {
  6315  		return nil, err
  6316  	}
  6317  	c.urlParams_.Set("alt", alt)
  6318  	c.urlParams_.Set("prettyPrint", "false")
  6319  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/tags")
  6320  	urls += "?" + c.urlParams_.Encode()
  6321  	req, err := http.NewRequest("POST", urls, body)
  6322  	if err != nil {
  6323  		return nil, err
  6324  	}
  6325  	req.Header = reqHeaders
  6326  	googleapi.Expand(req.URL, map[string]string{
  6327  		"parent": c.parent,
  6328  	})
  6329  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6330  }
  6331  
  6332  // Do executes the "datacatalog.projects.locations.entryGroups.entries.tags.create" call.
  6333  // Any non-2xx status code is an error. Response headers are in either
  6334  // *GoogleCloudDatacatalogV1beta1Tag.ServerResponse.Header or (if a response
  6335  // was returned at all) in error.(*googleapi.Error).Header. Use
  6336  // googleapi.IsNotModified to check whether the returned error was because
  6337  // http.StatusNotModified was returned.
  6338  func (c *ProjectsLocationsEntryGroupsEntriesTagsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogV1beta1Tag, error) {
  6339  	gensupport.SetOptions(c.urlParams_, opts...)
  6340  	res, err := c.doRequest("json")
  6341  	if res != nil && res.StatusCode == http.StatusNotModified {
  6342  		if res.Body != nil {
  6343  			res.Body.Close()
  6344  		}
  6345  		return nil, gensupport.WrapError(&googleapi.Error{
  6346  			Code:   res.StatusCode,
  6347  			Header: res.Header,
  6348  		})
  6349  	}
  6350  	if err != nil {
  6351  		return nil, err
  6352  	}
  6353  	defer googleapi.CloseBody(res)
  6354  	if err := googleapi.CheckResponse(res); err != nil {
  6355  		return nil, gensupport.WrapError(err)
  6356  	}
  6357  	ret := &GoogleCloudDatacatalogV1beta1Tag{
  6358  		ServerResponse: googleapi.ServerResponse{
  6359  			Header:         res.Header,
  6360  			HTTPStatusCode: res.StatusCode,
  6361  		},
  6362  	}
  6363  	target := &ret
  6364  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6365  		return nil, err
  6366  	}
  6367  	return ret, nil
  6368  }
  6369  
  6370  type ProjectsLocationsEntryGroupsEntriesTagsDeleteCall struct {
  6371  	s          *Service
  6372  	name       string
  6373  	urlParams_ gensupport.URLParams
  6374  	ctx_       context.Context
  6375  	header_    http.Header
  6376  }
  6377  
  6378  // Delete: Deletes a tag.
  6379  //
  6380  //   - name: The name of the tag to delete. Example: *
  6381  //     projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/ent
  6382  //     ries/{entry_id}/tags/{tag_id}.
  6383  func (r *ProjectsLocationsEntryGroupsEntriesTagsService) Delete(name string) *ProjectsLocationsEntryGroupsEntriesTagsDeleteCall {
  6384  	c := &ProjectsLocationsEntryGroupsEntriesTagsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6385  	c.name = name
  6386  	return c
  6387  }
  6388  
  6389  // Fields allows partial responses to be retrieved. See
  6390  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6391  // details.
  6392  func (c *ProjectsLocationsEntryGroupsEntriesTagsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsEntryGroupsEntriesTagsDeleteCall {
  6393  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6394  	return c
  6395  }
  6396  
  6397  // Context sets the context to be used in this call's Do method.
  6398  func (c *ProjectsLocationsEntryGroupsEntriesTagsDeleteCall) Context(ctx context.Context) *ProjectsLocationsEntryGroupsEntriesTagsDeleteCall {
  6399  	c.ctx_ = ctx
  6400  	return c
  6401  }
  6402  
  6403  // Header returns a http.Header that can be modified by the caller to add
  6404  // headers to the request.
  6405  func (c *ProjectsLocationsEntryGroupsEntriesTagsDeleteCall) Header() http.Header {
  6406  	if c.header_ == nil {
  6407  		c.header_ = make(http.Header)
  6408  	}
  6409  	return c.header_
  6410  }
  6411  
  6412  func (c *ProjectsLocationsEntryGroupsEntriesTagsDeleteCall) doRequest(alt string) (*http.Response, error) {
  6413  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  6414  	var body io.Reader = nil
  6415  	c.urlParams_.Set("alt", alt)
  6416  	c.urlParams_.Set("prettyPrint", "false")
  6417  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
  6418  	urls += "?" + c.urlParams_.Encode()
  6419  	req, err := http.NewRequest("DELETE", urls, body)
  6420  	if err != nil {
  6421  		return nil, err
  6422  	}
  6423  	req.Header = reqHeaders
  6424  	googleapi.Expand(req.URL, map[string]string{
  6425  		"name": c.name,
  6426  	})
  6427  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6428  }
  6429  
  6430  // Do executes the "datacatalog.projects.locations.entryGroups.entries.tags.delete" call.
  6431  // Any non-2xx status code is an error. Response headers are in either
  6432  // *Empty.ServerResponse.Header or (if a response was returned at all) in
  6433  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  6434  // whether the returned error was because http.StatusNotModified was returned.
  6435  func (c *ProjectsLocationsEntryGroupsEntriesTagsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
  6436  	gensupport.SetOptions(c.urlParams_, opts...)
  6437  	res, err := c.doRequest("json")
  6438  	if res != nil && res.StatusCode == http.StatusNotModified {
  6439  		if res.Body != nil {
  6440  			res.Body.Close()
  6441  		}
  6442  		return nil, gensupport.WrapError(&googleapi.Error{
  6443  			Code:   res.StatusCode,
  6444  			Header: res.Header,
  6445  		})
  6446  	}
  6447  	if err != nil {
  6448  		return nil, err
  6449  	}
  6450  	defer googleapi.CloseBody(res)
  6451  	if err := googleapi.CheckResponse(res); err != nil {
  6452  		return nil, gensupport.WrapError(err)
  6453  	}
  6454  	ret := &Empty{
  6455  		ServerResponse: googleapi.ServerResponse{
  6456  			Header:         res.Header,
  6457  			HTTPStatusCode: res.StatusCode,
  6458  		},
  6459  	}
  6460  	target := &ret
  6461  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6462  		return nil, err
  6463  	}
  6464  	return ret, nil
  6465  }
  6466  
  6467  type ProjectsLocationsEntryGroupsEntriesTagsListCall struct {
  6468  	s            *Service
  6469  	parent       string
  6470  	urlParams_   gensupport.URLParams
  6471  	ifNoneMatch_ string
  6472  	ctx_         context.Context
  6473  	header_      http.Header
  6474  }
  6475  
  6476  // List: Lists tags assigned to an Entry. The columns in the response are
  6477  // lowercased.
  6478  //
  6479  //   - parent: The name of the Data Catalog resource to list the tags of. The
  6480  //     resource could be an Entry or an EntryGroup. Examples: *
  6481  //     projects/{project_id}/locations/{location}/entryGroups/{entry_group_id} *
  6482  //     projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/ent
  6483  //     ries/{entry_id}.
  6484  func (r *ProjectsLocationsEntryGroupsEntriesTagsService) List(parent string) *ProjectsLocationsEntryGroupsEntriesTagsListCall {
  6485  	c := &ProjectsLocationsEntryGroupsEntriesTagsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6486  	c.parent = parent
  6487  	return c
  6488  }
  6489  
  6490  // PageSize sets the optional parameter "pageSize": The maximum number of tags
  6491  // to return. Default is 10. Max limit is 1000.
  6492  func (c *ProjectsLocationsEntryGroupsEntriesTagsListCall) PageSize(pageSize int64) *ProjectsLocationsEntryGroupsEntriesTagsListCall {
  6493  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  6494  	return c
  6495  }
  6496  
  6497  // PageToken sets the optional parameter "pageToken": Token that specifies
  6498  // which page is requested. If empty, the first page is returned.
  6499  func (c *ProjectsLocationsEntryGroupsEntriesTagsListCall) PageToken(pageToken string) *ProjectsLocationsEntryGroupsEntriesTagsListCall {
  6500  	c.urlParams_.Set("pageToken", pageToken)
  6501  	return c
  6502  }
  6503  
  6504  // Fields allows partial responses to be retrieved. See
  6505  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6506  // details.
  6507  func (c *ProjectsLocationsEntryGroupsEntriesTagsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsEntryGroupsEntriesTagsListCall {
  6508  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6509  	return c
  6510  }
  6511  
  6512  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  6513  // object's ETag matches the given value. This is useful for getting updates
  6514  // only after the object has changed since the last request.
  6515  func (c *ProjectsLocationsEntryGroupsEntriesTagsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsEntryGroupsEntriesTagsListCall {
  6516  	c.ifNoneMatch_ = entityTag
  6517  	return c
  6518  }
  6519  
  6520  // Context sets the context to be used in this call's Do method.
  6521  func (c *ProjectsLocationsEntryGroupsEntriesTagsListCall) Context(ctx context.Context) *ProjectsLocationsEntryGroupsEntriesTagsListCall {
  6522  	c.ctx_ = ctx
  6523  	return c
  6524  }
  6525  
  6526  // Header returns a http.Header that can be modified by the caller to add
  6527  // headers to the request.
  6528  func (c *ProjectsLocationsEntryGroupsEntriesTagsListCall) Header() http.Header {
  6529  	if c.header_ == nil {
  6530  		c.header_ = make(http.Header)
  6531  	}
  6532  	return c.header_
  6533  }
  6534  
  6535  func (c *ProjectsLocationsEntryGroupsEntriesTagsListCall) doRequest(alt string) (*http.Response, error) {
  6536  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  6537  	if c.ifNoneMatch_ != "" {
  6538  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  6539  	}
  6540  	var body io.Reader = nil
  6541  	c.urlParams_.Set("alt", alt)
  6542  	c.urlParams_.Set("prettyPrint", "false")
  6543  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/tags")
  6544  	urls += "?" + c.urlParams_.Encode()
  6545  	req, err := http.NewRequest("GET", urls, body)
  6546  	if err != nil {
  6547  		return nil, err
  6548  	}
  6549  	req.Header = reqHeaders
  6550  	googleapi.Expand(req.URL, map[string]string{
  6551  		"parent": c.parent,
  6552  	})
  6553  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6554  }
  6555  
  6556  // Do executes the "datacatalog.projects.locations.entryGroups.entries.tags.list" call.
  6557  // Any non-2xx status code is an error. Response headers are in either
  6558  // *GoogleCloudDatacatalogV1beta1ListTagsResponse.ServerResponse.Header or (if
  6559  // a response was returned at all) in error.(*googleapi.Error).Header. Use
  6560  // googleapi.IsNotModified to check whether the returned error was because
  6561  // http.StatusNotModified was returned.
  6562  func (c *ProjectsLocationsEntryGroupsEntriesTagsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogV1beta1ListTagsResponse, error) {
  6563  	gensupport.SetOptions(c.urlParams_, opts...)
  6564  	res, err := c.doRequest("json")
  6565  	if res != nil && res.StatusCode == http.StatusNotModified {
  6566  		if res.Body != nil {
  6567  			res.Body.Close()
  6568  		}
  6569  		return nil, gensupport.WrapError(&googleapi.Error{
  6570  			Code:   res.StatusCode,
  6571  			Header: res.Header,
  6572  		})
  6573  	}
  6574  	if err != nil {
  6575  		return nil, err
  6576  	}
  6577  	defer googleapi.CloseBody(res)
  6578  	if err := googleapi.CheckResponse(res); err != nil {
  6579  		return nil, gensupport.WrapError(err)
  6580  	}
  6581  	ret := &GoogleCloudDatacatalogV1beta1ListTagsResponse{
  6582  		ServerResponse: googleapi.ServerResponse{
  6583  			Header:         res.Header,
  6584  			HTTPStatusCode: res.StatusCode,
  6585  		},
  6586  	}
  6587  	target := &ret
  6588  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6589  		return nil, err
  6590  	}
  6591  	return ret, nil
  6592  }
  6593  
  6594  // Pages invokes f for each page of results.
  6595  // A non-nil error returned from f will halt the iteration.
  6596  // The provided context supersedes any context provided to the Context method.
  6597  func (c *ProjectsLocationsEntryGroupsEntriesTagsListCall) Pages(ctx context.Context, f func(*GoogleCloudDatacatalogV1beta1ListTagsResponse) error) error {
  6598  	c.ctx_ = ctx
  6599  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  6600  	for {
  6601  		x, err := c.Do()
  6602  		if err != nil {
  6603  			return err
  6604  		}
  6605  		if err := f(x); err != nil {
  6606  			return err
  6607  		}
  6608  		if x.NextPageToken == "" {
  6609  			return nil
  6610  		}
  6611  		c.PageToken(x.NextPageToken)
  6612  	}
  6613  }
  6614  
  6615  type ProjectsLocationsEntryGroupsEntriesTagsPatchCall struct {
  6616  	s                                *Service
  6617  	nameid                           string
  6618  	googleclouddatacatalogv1beta1tag *GoogleCloudDatacatalogV1beta1Tag
  6619  	urlParams_                       gensupport.URLParams
  6620  	ctx_                             context.Context
  6621  	header_                          http.Header
  6622  }
  6623  
  6624  // Patch: Updates an existing tag.
  6625  //
  6626  //   - name: Identifier. The resource name of the tag in URL format. Example: *
  6627  //     projects/{project_id}/locations/{location}/entrygroups/{entry_group_id}/ent
  6628  //     ries/{entry_id}/tags/{tag_id} where `tag_id` is a system-generated
  6629  //     identifier. Note that this Tag may not actually be stored in the location
  6630  //     in this name.
  6631  func (r *ProjectsLocationsEntryGroupsEntriesTagsService) Patch(nameid string, googleclouddatacatalogv1beta1tag *GoogleCloudDatacatalogV1beta1Tag) *ProjectsLocationsEntryGroupsEntriesTagsPatchCall {
  6632  	c := &ProjectsLocationsEntryGroupsEntriesTagsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6633  	c.nameid = nameid
  6634  	c.googleclouddatacatalogv1beta1tag = googleclouddatacatalogv1beta1tag
  6635  	return c
  6636  }
  6637  
  6638  // UpdateMask sets the optional parameter "updateMask": Note: Currently, this
  6639  // parameter can only take "fields" as value. Names of fields whose values to
  6640  // overwrite on a tag. Currently, a tag has the only modifiable field with the
  6641  // name `fields`. In general, if this parameter is absent or empty, all
  6642  // modifiable fields are overwritten. If such fields are non-required and
  6643  // omitted in the request body, their values are emptied.
  6644  func (c *ProjectsLocationsEntryGroupsEntriesTagsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsEntryGroupsEntriesTagsPatchCall {
  6645  	c.urlParams_.Set("updateMask", updateMask)
  6646  	return c
  6647  }
  6648  
  6649  // Fields allows partial responses to be retrieved. See
  6650  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6651  // details.
  6652  func (c *ProjectsLocationsEntryGroupsEntriesTagsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsEntryGroupsEntriesTagsPatchCall {
  6653  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6654  	return c
  6655  }
  6656  
  6657  // Context sets the context to be used in this call's Do method.
  6658  func (c *ProjectsLocationsEntryGroupsEntriesTagsPatchCall) Context(ctx context.Context) *ProjectsLocationsEntryGroupsEntriesTagsPatchCall {
  6659  	c.ctx_ = ctx
  6660  	return c
  6661  }
  6662  
  6663  // Header returns a http.Header that can be modified by the caller to add
  6664  // headers to the request.
  6665  func (c *ProjectsLocationsEntryGroupsEntriesTagsPatchCall) Header() http.Header {
  6666  	if c.header_ == nil {
  6667  		c.header_ = make(http.Header)
  6668  	}
  6669  	return c.header_
  6670  }
  6671  
  6672  func (c *ProjectsLocationsEntryGroupsEntriesTagsPatchCall) doRequest(alt string) (*http.Response, error) {
  6673  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  6674  	var body io.Reader = nil
  6675  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddatacatalogv1beta1tag)
  6676  	if err != nil {
  6677  		return nil, err
  6678  	}
  6679  	c.urlParams_.Set("alt", alt)
  6680  	c.urlParams_.Set("prettyPrint", "false")
  6681  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
  6682  	urls += "?" + c.urlParams_.Encode()
  6683  	req, err := http.NewRequest("PATCH", urls, body)
  6684  	if err != nil {
  6685  		return nil, err
  6686  	}
  6687  	req.Header = reqHeaders
  6688  	googleapi.Expand(req.URL, map[string]string{
  6689  		"name": c.nameid,
  6690  	})
  6691  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6692  }
  6693  
  6694  // Do executes the "datacatalog.projects.locations.entryGroups.entries.tags.patch" call.
  6695  // Any non-2xx status code is an error. Response headers are in either
  6696  // *GoogleCloudDatacatalogV1beta1Tag.ServerResponse.Header or (if a response
  6697  // was returned at all) in error.(*googleapi.Error).Header. Use
  6698  // googleapi.IsNotModified to check whether the returned error was because
  6699  // http.StatusNotModified was returned.
  6700  func (c *ProjectsLocationsEntryGroupsEntriesTagsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogV1beta1Tag, error) {
  6701  	gensupport.SetOptions(c.urlParams_, opts...)
  6702  	res, err := c.doRequest("json")
  6703  	if res != nil && res.StatusCode == http.StatusNotModified {
  6704  		if res.Body != nil {
  6705  			res.Body.Close()
  6706  		}
  6707  		return nil, gensupport.WrapError(&googleapi.Error{
  6708  			Code:   res.StatusCode,
  6709  			Header: res.Header,
  6710  		})
  6711  	}
  6712  	if err != nil {
  6713  		return nil, err
  6714  	}
  6715  	defer googleapi.CloseBody(res)
  6716  	if err := googleapi.CheckResponse(res); err != nil {
  6717  		return nil, gensupport.WrapError(err)
  6718  	}
  6719  	ret := &GoogleCloudDatacatalogV1beta1Tag{
  6720  		ServerResponse: googleapi.ServerResponse{
  6721  			Header:         res.Header,
  6722  			HTTPStatusCode: res.StatusCode,
  6723  		},
  6724  	}
  6725  	target := &ret
  6726  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6727  		return nil, err
  6728  	}
  6729  	return ret, nil
  6730  }
  6731  
  6732  type ProjectsLocationsEntryGroupsTagsCreateCall struct {
  6733  	s                                *Service
  6734  	parent                           string
  6735  	googleclouddatacatalogv1beta1tag *GoogleCloudDatacatalogV1beta1Tag
  6736  	urlParams_                       gensupport.URLParams
  6737  	ctx_                             context.Context
  6738  	header_                          http.Header
  6739  }
  6740  
  6741  // Create: Creates a tag on an Entry. Note: The project identified by the
  6742  // `parent` parameter for the tag
  6743  // (https://cloud.google.com/data-catalog/docs/reference/rest/v1beta1/projects.locations.entryGroups.entries.tags/create#path-parameters)
  6744  // and the tag template
  6745  // (https://cloud.google.com/data-catalog/docs/reference/rest/v1beta1/projects.locations.tagTemplates/create#path-parameters)
  6746  // used to create the tag must be from the same organization.
  6747  //
  6748  //   - parent: The name of the resource to attach this tag to. Tags can be
  6749  //     attached to Entries. Example: *
  6750  //     projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/ent
  6751  //     ries/{entry_id} Note that this Tag and its child resources may not
  6752  //     actually be stored in the location in this name.
  6753  func (r *ProjectsLocationsEntryGroupsTagsService) Create(parent string, googleclouddatacatalogv1beta1tag *GoogleCloudDatacatalogV1beta1Tag) *ProjectsLocationsEntryGroupsTagsCreateCall {
  6754  	c := &ProjectsLocationsEntryGroupsTagsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6755  	c.parent = parent
  6756  	c.googleclouddatacatalogv1beta1tag = googleclouddatacatalogv1beta1tag
  6757  	return c
  6758  }
  6759  
  6760  // Fields allows partial responses to be retrieved. See
  6761  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6762  // details.
  6763  func (c *ProjectsLocationsEntryGroupsTagsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsEntryGroupsTagsCreateCall {
  6764  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6765  	return c
  6766  }
  6767  
  6768  // Context sets the context to be used in this call's Do method.
  6769  func (c *ProjectsLocationsEntryGroupsTagsCreateCall) Context(ctx context.Context) *ProjectsLocationsEntryGroupsTagsCreateCall {
  6770  	c.ctx_ = ctx
  6771  	return c
  6772  }
  6773  
  6774  // Header returns a http.Header that can be modified by the caller to add
  6775  // headers to the request.
  6776  func (c *ProjectsLocationsEntryGroupsTagsCreateCall) Header() http.Header {
  6777  	if c.header_ == nil {
  6778  		c.header_ = make(http.Header)
  6779  	}
  6780  	return c.header_
  6781  }
  6782  
  6783  func (c *ProjectsLocationsEntryGroupsTagsCreateCall) doRequest(alt string) (*http.Response, error) {
  6784  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  6785  	var body io.Reader = nil
  6786  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddatacatalogv1beta1tag)
  6787  	if err != nil {
  6788  		return nil, err
  6789  	}
  6790  	c.urlParams_.Set("alt", alt)
  6791  	c.urlParams_.Set("prettyPrint", "false")
  6792  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/tags")
  6793  	urls += "?" + c.urlParams_.Encode()
  6794  	req, err := http.NewRequest("POST", urls, body)
  6795  	if err != nil {
  6796  		return nil, err
  6797  	}
  6798  	req.Header = reqHeaders
  6799  	googleapi.Expand(req.URL, map[string]string{
  6800  		"parent": c.parent,
  6801  	})
  6802  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6803  }
  6804  
  6805  // Do executes the "datacatalog.projects.locations.entryGroups.tags.create" call.
  6806  // Any non-2xx status code is an error. Response headers are in either
  6807  // *GoogleCloudDatacatalogV1beta1Tag.ServerResponse.Header or (if a response
  6808  // was returned at all) in error.(*googleapi.Error).Header. Use
  6809  // googleapi.IsNotModified to check whether the returned error was because
  6810  // http.StatusNotModified was returned.
  6811  func (c *ProjectsLocationsEntryGroupsTagsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogV1beta1Tag, error) {
  6812  	gensupport.SetOptions(c.urlParams_, opts...)
  6813  	res, err := c.doRequest("json")
  6814  	if res != nil && res.StatusCode == http.StatusNotModified {
  6815  		if res.Body != nil {
  6816  			res.Body.Close()
  6817  		}
  6818  		return nil, gensupport.WrapError(&googleapi.Error{
  6819  			Code:   res.StatusCode,
  6820  			Header: res.Header,
  6821  		})
  6822  	}
  6823  	if err != nil {
  6824  		return nil, err
  6825  	}
  6826  	defer googleapi.CloseBody(res)
  6827  	if err := googleapi.CheckResponse(res); err != nil {
  6828  		return nil, gensupport.WrapError(err)
  6829  	}
  6830  	ret := &GoogleCloudDatacatalogV1beta1Tag{
  6831  		ServerResponse: googleapi.ServerResponse{
  6832  			Header:         res.Header,
  6833  			HTTPStatusCode: res.StatusCode,
  6834  		},
  6835  	}
  6836  	target := &ret
  6837  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6838  		return nil, err
  6839  	}
  6840  	return ret, nil
  6841  }
  6842  
  6843  type ProjectsLocationsEntryGroupsTagsDeleteCall struct {
  6844  	s          *Service
  6845  	name       string
  6846  	urlParams_ gensupport.URLParams
  6847  	ctx_       context.Context
  6848  	header_    http.Header
  6849  }
  6850  
  6851  // Delete: Deletes a tag.
  6852  //
  6853  //   - name: The name of the tag to delete. Example: *
  6854  //     projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/ent
  6855  //     ries/{entry_id}/tags/{tag_id}.
  6856  func (r *ProjectsLocationsEntryGroupsTagsService) Delete(name string) *ProjectsLocationsEntryGroupsTagsDeleteCall {
  6857  	c := &ProjectsLocationsEntryGroupsTagsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6858  	c.name = name
  6859  	return c
  6860  }
  6861  
  6862  // Fields allows partial responses to be retrieved. See
  6863  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6864  // details.
  6865  func (c *ProjectsLocationsEntryGroupsTagsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsEntryGroupsTagsDeleteCall {
  6866  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6867  	return c
  6868  }
  6869  
  6870  // Context sets the context to be used in this call's Do method.
  6871  func (c *ProjectsLocationsEntryGroupsTagsDeleteCall) Context(ctx context.Context) *ProjectsLocationsEntryGroupsTagsDeleteCall {
  6872  	c.ctx_ = ctx
  6873  	return c
  6874  }
  6875  
  6876  // Header returns a http.Header that can be modified by the caller to add
  6877  // headers to the request.
  6878  func (c *ProjectsLocationsEntryGroupsTagsDeleteCall) Header() http.Header {
  6879  	if c.header_ == nil {
  6880  		c.header_ = make(http.Header)
  6881  	}
  6882  	return c.header_
  6883  }
  6884  
  6885  func (c *ProjectsLocationsEntryGroupsTagsDeleteCall) doRequest(alt string) (*http.Response, error) {
  6886  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  6887  	var body io.Reader = nil
  6888  	c.urlParams_.Set("alt", alt)
  6889  	c.urlParams_.Set("prettyPrint", "false")
  6890  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
  6891  	urls += "?" + c.urlParams_.Encode()
  6892  	req, err := http.NewRequest("DELETE", urls, body)
  6893  	if err != nil {
  6894  		return nil, err
  6895  	}
  6896  	req.Header = reqHeaders
  6897  	googleapi.Expand(req.URL, map[string]string{
  6898  		"name": c.name,
  6899  	})
  6900  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6901  }
  6902  
  6903  // Do executes the "datacatalog.projects.locations.entryGroups.tags.delete" call.
  6904  // Any non-2xx status code is an error. Response headers are in either
  6905  // *Empty.ServerResponse.Header or (if a response was returned at all) in
  6906  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  6907  // whether the returned error was because http.StatusNotModified was returned.
  6908  func (c *ProjectsLocationsEntryGroupsTagsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
  6909  	gensupport.SetOptions(c.urlParams_, opts...)
  6910  	res, err := c.doRequest("json")
  6911  	if res != nil && res.StatusCode == http.StatusNotModified {
  6912  		if res.Body != nil {
  6913  			res.Body.Close()
  6914  		}
  6915  		return nil, gensupport.WrapError(&googleapi.Error{
  6916  			Code:   res.StatusCode,
  6917  			Header: res.Header,
  6918  		})
  6919  	}
  6920  	if err != nil {
  6921  		return nil, err
  6922  	}
  6923  	defer googleapi.CloseBody(res)
  6924  	if err := googleapi.CheckResponse(res); err != nil {
  6925  		return nil, gensupport.WrapError(err)
  6926  	}
  6927  	ret := &Empty{
  6928  		ServerResponse: googleapi.ServerResponse{
  6929  			Header:         res.Header,
  6930  			HTTPStatusCode: res.StatusCode,
  6931  		},
  6932  	}
  6933  	target := &ret
  6934  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6935  		return nil, err
  6936  	}
  6937  	return ret, nil
  6938  }
  6939  
  6940  type ProjectsLocationsEntryGroupsTagsListCall struct {
  6941  	s            *Service
  6942  	parent       string
  6943  	urlParams_   gensupport.URLParams
  6944  	ifNoneMatch_ string
  6945  	ctx_         context.Context
  6946  	header_      http.Header
  6947  }
  6948  
  6949  // List: Lists tags assigned to an Entry. The columns in the response are
  6950  // lowercased.
  6951  //
  6952  //   - parent: The name of the Data Catalog resource to list the tags of. The
  6953  //     resource could be an Entry or an EntryGroup. Examples: *
  6954  //     projects/{project_id}/locations/{location}/entryGroups/{entry_group_id} *
  6955  //     projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/ent
  6956  //     ries/{entry_id}.
  6957  func (r *ProjectsLocationsEntryGroupsTagsService) List(parent string) *ProjectsLocationsEntryGroupsTagsListCall {
  6958  	c := &ProjectsLocationsEntryGroupsTagsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6959  	c.parent = parent
  6960  	return c
  6961  }
  6962  
  6963  // PageSize sets the optional parameter "pageSize": The maximum number of tags
  6964  // to return. Default is 10. Max limit is 1000.
  6965  func (c *ProjectsLocationsEntryGroupsTagsListCall) PageSize(pageSize int64) *ProjectsLocationsEntryGroupsTagsListCall {
  6966  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  6967  	return c
  6968  }
  6969  
  6970  // PageToken sets the optional parameter "pageToken": Token that specifies
  6971  // which page is requested. If empty, the first page is returned.
  6972  func (c *ProjectsLocationsEntryGroupsTagsListCall) PageToken(pageToken string) *ProjectsLocationsEntryGroupsTagsListCall {
  6973  	c.urlParams_.Set("pageToken", pageToken)
  6974  	return c
  6975  }
  6976  
  6977  // Fields allows partial responses to be retrieved. See
  6978  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6979  // details.
  6980  func (c *ProjectsLocationsEntryGroupsTagsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsEntryGroupsTagsListCall {
  6981  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6982  	return c
  6983  }
  6984  
  6985  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  6986  // object's ETag matches the given value. This is useful for getting updates
  6987  // only after the object has changed since the last request.
  6988  func (c *ProjectsLocationsEntryGroupsTagsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsEntryGroupsTagsListCall {
  6989  	c.ifNoneMatch_ = entityTag
  6990  	return c
  6991  }
  6992  
  6993  // Context sets the context to be used in this call's Do method.
  6994  func (c *ProjectsLocationsEntryGroupsTagsListCall) Context(ctx context.Context) *ProjectsLocationsEntryGroupsTagsListCall {
  6995  	c.ctx_ = ctx
  6996  	return c
  6997  }
  6998  
  6999  // Header returns a http.Header that can be modified by the caller to add
  7000  // headers to the request.
  7001  func (c *ProjectsLocationsEntryGroupsTagsListCall) Header() http.Header {
  7002  	if c.header_ == nil {
  7003  		c.header_ = make(http.Header)
  7004  	}
  7005  	return c.header_
  7006  }
  7007  
  7008  func (c *ProjectsLocationsEntryGroupsTagsListCall) doRequest(alt string) (*http.Response, error) {
  7009  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  7010  	if c.ifNoneMatch_ != "" {
  7011  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  7012  	}
  7013  	var body io.Reader = nil
  7014  	c.urlParams_.Set("alt", alt)
  7015  	c.urlParams_.Set("prettyPrint", "false")
  7016  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/tags")
  7017  	urls += "?" + c.urlParams_.Encode()
  7018  	req, err := http.NewRequest("GET", urls, body)
  7019  	if err != nil {
  7020  		return nil, err
  7021  	}
  7022  	req.Header = reqHeaders
  7023  	googleapi.Expand(req.URL, map[string]string{
  7024  		"parent": c.parent,
  7025  	})
  7026  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7027  }
  7028  
  7029  // Do executes the "datacatalog.projects.locations.entryGroups.tags.list" call.
  7030  // Any non-2xx status code is an error. Response headers are in either
  7031  // *GoogleCloudDatacatalogV1beta1ListTagsResponse.ServerResponse.Header or (if
  7032  // a response was returned at all) in error.(*googleapi.Error).Header. Use
  7033  // googleapi.IsNotModified to check whether the returned error was because
  7034  // http.StatusNotModified was returned.
  7035  func (c *ProjectsLocationsEntryGroupsTagsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogV1beta1ListTagsResponse, error) {
  7036  	gensupport.SetOptions(c.urlParams_, opts...)
  7037  	res, err := c.doRequest("json")
  7038  	if res != nil && res.StatusCode == http.StatusNotModified {
  7039  		if res.Body != nil {
  7040  			res.Body.Close()
  7041  		}
  7042  		return nil, gensupport.WrapError(&googleapi.Error{
  7043  			Code:   res.StatusCode,
  7044  			Header: res.Header,
  7045  		})
  7046  	}
  7047  	if err != nil {
  7048  		return nil, err
  7049  	}
  7050  	defer googleapi.CloseBody(res)
  7051  	if err := googleapi.CheckResponse(res); err != nil {
  7052  		return nil, gensupport.WrapError(err)
  7053  	}
  7054  	ret := &GoogleCloudDatacatalogV1beta1ListTagsResponse{
  7055  		ServerResponse: googleapi.ServerResponse{
  7056  			Header:         res.Header,
  7057  			HTTPStatusCode: res.StatusCode,
  7058  		},
  7059  	}
  7060  	target := &ret
  7061  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7062  		return nil, err
  7063  	}
  7064  	return ret, nil
  7065  }
  7066  
  7067  // Pages invokes f for each page of results.
  7068  // A non-nil error returned from f will halt the iteration.
  7069  // The provided context supersedes any context provided to the Context method.
  7070  func (c *ProjectsLocationsEntryGroupsTagsListCall) Pages(ctx context.Context, f func(*GoogleCloudDatacatalogV1beta1ListTagsResponse) error) error {
  7071  	c.ctx_ = ctx
  7072  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  7073  	for {
  7074  		x, err := c.Do()
  7075  		if err != nil {
  7076  			return err
  7077  		}
  7078  		if err := f(x); err != nil {
  7079  			return err
  7080  		}
  7081  		if x.NextPageToken == "" {
  7082  			return nil
  7083  		}
  7084  		c.PageToken(x.NextPageToken)
  7085  	}
  7086  }
  7087  
  7088  type ProjectsLocationsEntryGroupsTagsPatchCall struct {
  7089  	s                                *Service
  7090  	nameid                           string
  7091  	googleclouddatacatalogv1beta1tag *GoogleCloudDatacatalogV1beta1Tag
  7092  	urlParams_                       gensupport.URLParams
  7093  	ctx_                             context.Context
  7094  	header_                          http.Header
  7095  }
  7096  
  7097  // Patch: Updates an existing tag.
  7098  //
  7099  //   - name: Identifier. The resource name of the tag in URL format. Example: *
  7100  //     projects/{project_id}/locations/{location}/entrygroups/{entry_group_id}/ent
  7101  //     ries/{entry_id}/tags/{tag_id} where `tag_id` is a system-generated
  7102  //     identifier. Note that this Tag may not actually be stored in the location
  7103  //     in this name.
  7104  func (r *ProjectsLocationsEntryGroupsTagsService) Patch(nameid string, googleclouddatacatalogv1beta1tag *GoogleCloudDatacatalogV1beta1Tag) *ProjectsLocationsEntryGroupsTagsPatchCall {
  7105  	c := &ProjectsLocationsEntryGroupsTagsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7106  	c.nameid = nameid
  7107  	c.googleclouddatacatalogv1beta1tag = googleclouddatacatalogv1beta1tag
  7108  	return c
  7109  }
  7110  
  7111  // UpdateMask sets the optional parameter "updateMask": Note: Currently, this
  7112  // parameter can only take "fields" as value. Names of fields whose values to
  7113  // overwrite on a tag. Currently, a tag has the only modifiable field with the
  7114  // name `fields`. In general, if this parameter is absent or empty, all
  7115  // modifiable fields are overwritten. If such fields are non-required and
  7116  // omitted in the request body, their values are emptied.
  7117  func (c *ProjectsLocationsEntryGroupsTagsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsEntryGroupsTagsPatchCall {
  7118  	c.urlParams_.Set("updateMask", updateMask)
  7119  	return c
  7120  }
  7121  
  7122  // Fields allows partial responses to be retrieved. See
  7123  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7124  // details.
  7125  func (c *ProjectsLocationsEntryGroupsTagsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsEntryGroupsTagsPatchCall {
  7126  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7127  	return c
  7128  }
  7129  
  7130  // Context sets the context to be used in this call's Do method.
  7131  func (c *ProjectsLocationsEntryGroupsTagsPatchCall) Context(ctx context.Context) *ProjectsLocationsEntryGroupsTagsPatchCall {
  7132  	c.ctx_ = ctx
  7133  	return c
  7134  }
  7135  
  7136  // Header returns a http.Header that can be modified by the caller to add
  7137  // headers to the request.
  7138  func (c *ProjectsLocationsEntryGroupsTagsPatchCall) Header() http.Header {
  7139  	if c.header_ == nil {
  7140  		c.header_ = make(http.Header)
  7141  	}
  7142  	return c.header_
  7143  }
  7144  
  7145  func (c *ProjectsLocationsEntryGroupsTagsPatchCall) doRequest(alt string) (*http.Response, error) {
  7146  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  7147  	var body io.Reader = nil
  7148  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddatacatalogv1beta1tag)
  7149  	if err != nil {
  7150  		return nil, err
  7151  	}
  7152  	c.urlParams_.Set("alt", alt)
  7153  	c.urlParams_.Set("prettyPrint", "false")
  7154  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
  7155  	urls += "?" + c.urlParams_.Encode()
  7156  	req, err := http.NewRequest("PATCH", urls, body)
  7157  	if err != nil {
  7158  		return nil, err
  7159  	}
  7160  	req.Header = reqHeaders
  7161  	googleapi.Expand(req.URL, map[string]string{
  7162  		"name": c.nameid,
  7163  	})
  7164  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7165  }
  7166  
  7167  // Do executes the "datacatalog.projects.locations.entryGroups.tags.patch" call.
  7168  // Any non-2xx status code is an error. Response headers are in either
  7169  // *GoogleCloudDatacatalogV1beta1Tag.ServerResponse.Header or (if a response
  7170  // was returned at all) in error.(*googleapi.Error).Header. Use
  7171  // googleapi.IsNotModified to check whether the returned error was because
  7172  // http.StatusNotModified was returned.
  7173  func (c *ProjectsLocationsEntryGroupsTagsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogV1beta1Tag, error) {
  7174  	gensupport.SetOptions(c.urlParams_, opts...)
  7175  	res, err := c.doRequest("json")
  7176  	if res != nil && res.StatusCode == http.StatusNotModified {
  7177  		if res.Body != nil {
  7178  			res.Body.Close()
  7179  		}
  7180  		return nil, gensupport.WrapError(&googleapi.Error{
  7181  			Code:   res.StatusCode,
  7182  			Header: res.Header,
  7183  		})
  7184  	}
  7185  	if err != nil {
  7186  		return nil, err
  7187  	}
  7188  	defer googleapi.CloseBody(res)
  7189  	if err := googleapi.CheckResponse(res); err != nil {
  7190  		return nil, gensupport.WrapError(err)
  7191  	}
  7192  	ret := &GoogleCloudDatacatalogV1beta1Tag{
  7193  		ServerResponse: googleapi.ServerResponse{
  7194  			Header:         res.Header,
  7195  			HTTPStatusCode: res.StatusCode,
  7196  		},
  7197  	}
  7198  	target := &ret
  7199  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7200  		return nil, err
  7201  	}
  7202  	return ret, nil
  7203  }
  7204  
  7205  type ProjectsLocationsTagTemplatesCreateCall struct {
  7206  	s                                        *Service
  7207  	parent                                   string
  7208  	googleclouddatacatalogv1beta1tagtemplate *GoogleCloudDatacatalogV1beta1TagTemplate
  7209  	urlParams_                               gensupport.URLParams
  7210  	ctx_                                     context.Context
  7211  	header_                                  http.Header
  7212  }
  7213  
  7214  // Create: Creates a tag template. The user should enable the Data Catalog API
  7215  // in the project identified by the `parent` parameter (see Data Catalog
  7216  // Resource Project
  7217  // (https://cloud.google.com/data-catalog/docs/concepts/resource-project) for
  7218  // more information).
  7219  //
  7220  //   - parent: The name of the project and the template location
  7221  //     [region](https://cloud.google.com/data-catalog/docs/concepts/regions.
  7222  //     Example: * projects/{project_id}/locations/us-central1.
  7223  func (r *ProjectsLocationsTagTemplatesService) Create(parent string, googleclouddatacatalogv1beta1tagtemplate *GoogleCloudDatacatalogV1beta1TagTemplate) *ProjectsLocationsTagTemplatesCreateCall {
  7224  	c := &ProjectsLocationsTagTemplatesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7225  	c.parent = parent
  7226  	c.googleclouddatacatalogv1beta1tagtemplate = googleclouddatacatalogv1beta1tagtemplate
  7227  	return c
  7228  }
  7229  
  7230  // TagTemplateId sets the optional parameter "tagTemplateId": Required. The id
  7231  // of the tag template to create.
  7232  func (c *ProjectsLocationsTagTemplatesCreateCall) TagTemplateId(tagTemplateId string) *ProjectsLocationsTagTemplatesCreateCall {
  7233  	c.urlParams_.Set("tagTemplateId", tagTemplateId)
  7234  	return c
  7235  }
  7236  
  7237  // Fields allows partial responses to be retrieved. See
  7238  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7239  // details.
  7240  func (c *ProjectsLocationsTagTemplatesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsTagTemplatesCreateCall {
  7241  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7242  	return c
  7243  }
  7244  
  7245  // Context sets the context to be used in this call's Do method.
  7246  func (c *ProjectsLocationsTagTemplatesCreateCall) Context(ctx context.Context) *ProjectsLocationsTagTemplatesCreateCall {
  7247  	c.ctx_ = ctx
  7248  	return c
  7249  }
  7250  
  7251  // Header returns a http.Header that can be modified by the caller to add
  7252  // headers to the request.
  7253  func (c *ProjectsLocationsTagTemplatesCreateCall) Header() http.Header {
  7254  	if c.header_ == nil {
  7255  		c.header_ = make(http.Header)
  7256  	}
  7257  	return c.header_
  7258  }
  7259  
  7260  func (c *ProjectsLocationsTagTemplatesCreateCall) doRequest(alt string) (*http.Response, error) {
  7261  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  7262  	var body io.Reader = nil
  7263  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddatacatalogv1beta1tagtemplate)
  7264  	if err != nil {
  7265  		return nil, err
  7266  	}
  7267  	c.urlParams_.Set("alt", alt)
  7268  	c.urlParams_.Set("prettyPrint", "false")
  7269  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/tagTemplates")
  7270  	urls += "?" + c.urlParams_.Encode()
  7271  	req, err := http.NewRequest("POST", urls, body)
  7272  	if err != nil {
  7273  		return nil, err
  7274  	}
  7275  	req.Header = reqHeaders
  7276  	googleapi.Expand(req.URL, map[string]string{
  7277  		"parent": c.parent,
  7278  	})
  7279  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7280  }
  7281  
  7282  // Do executes the "datacatalog.projects.locations.tagTemplates.create" call.
  7283  // Any non-2xx status code is an error. Response headers are in either
  7284  // *GoogleCloudDatacatalogV1beta1TagTemplate.ServerResponse.Header or (if a
  7285  // response was returned at all) in error.(*googleapi.Error).Header. Use
  7286  // googleapi.IsNotModified to check whether the returned error was because
  7287  // http.StatusNotModified was returned.
  7288  func (c *ProjectsLocationsTagTemplatesCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogV1beta1TagTemplate, error) {
  7289  	gensupport.SetOptions(c.urlParams_, opts...)
  7290  	res, err := c.doRequest("json")
  7291  	if res != nil && res.StatusCode == http.StatusNotModified {
  7292  		if res.Body != nil {
  7293  			res.Body.Close()
  7294  		}
  7295  		return nil, gensupport.WrapError(&googleapi.Error{
  7296  			Code:   res.StatusCode,
  7297  			Header: res.Header,
  7298  		})
  7299  	}
  7300  	if err != nil {
  7301  		return nil, err
  7302  	}
  7303  	defer googleapi.CloseBody(res)
  7304  	if err := googleapi.CheckResponse(res); err != nil {
  7305  		return nil, gensupport.WrapError(err)
  7306  	}
  7307  	ret := &GoogleCloudDatacatalogV1beta1TagTemplate{
  7308  		ServerResponse: googleapi.ServerResponse{
  7309  			Header:         res.Header,
  7310  			HTTPStatusCode: res.StatusCode,
  7311  		},
  7312  	}
  7313  	target := &ret
  7314  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7315  		return nil, err
  7316  	}
  7317  	return ret, nil
  7318  }
  7319  
  7320  type ProjectsLocationsTagTemplatesDeleteCall struct {
  7321  	s          *Service
  7322  	name       string
  7323  	urlParams_ gensupport.URLParams
  7324  	ctx_       context.Context
  7325  	header_    http.Header
  7326  }
  7327  
  7328  // Delete: Deletes a tag template and all tags using the template. Users should
  7329  // enable the Data Catalog API in the project identified by the `name`
  7330  // parameter (see [Data Catalog Resource Project]
  7331  // (https://cloud.google.com/data-catalog/docs/concepts/resource-project) for
  7332  // more information).
  7333  //
  7334  //   - name: The name of the tag template to delete. Example: *
  7335  //     projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}.
  7336  func (r *ProjectsLocationsTagTemplatesService) Delete(name string) *ProjectsLocationsTagTemplatesDeleteCall {
  7337  	c := &ProjectsLocationsTagTemplatesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7338  	c.name = name
  7339  	return c
  7340  }
  7341  
  7342  // Force sets the optional parameter "force": Required. Currently, this field
  7343  // must always be set to `true`. This confirms the deletion of any possible
  7344  // tags using this template. `force = false` will be supported in the future.
  7345  func (c *ProjectsLocationsTagTemplatesDeleteCall) Force(force bool) *ProjectsLocationsTagTemplatesDeleteCall {
  7346  	c.urlParams_.Set("force", fmt.Sprint(force))
  7347  	return c
  7348  }
  7349  
  7350  // Fields allows partial responses to be retrieved. See
  7351  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7352  // details.
  7353  func (c *ProjectsLocationsTagTemplatesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsTagTemplatesDeleteCall {
  7354  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7355  	return c
  7356  }
  7357  
  7358  // Context sets the context to be used in this call's Do method.
  7359  func (c *ProjectsLocationsTagTemplatesDeleteCall) Context(ctx context.Context) *ProjectsLocationsTagTemplatesDeleteCall {
  7360  	c.ctx_ = ctx
  7361  	return c
  7362  }
  7363  
  7364  // Header returns a http.Header that can be modified by the caller to add
  7365  // headers to the request.
  7366  func (c *ProjectsLocationsTagTemplatesDeleteCall) Header() http.Header {
  7367  	if c.header_ == nil {
  7368  		c.header_ = make(http.Header)
  7369  	}
  7370  	return c.header_
  7371  }
  7372  
  7373  func (c *ProjectsLocationsTagTemplatesDeleteCall) doRequest(alt string) (*http.Response, error) {
  7374  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  7375  	var body io.Reader = nil
  7376  	c.urlParams_.Set("alt", alt)
  7377  	c.urlParams_.Set("prettyPrint", "false")
  7378  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
  7379  	urls += "?" + c.urlParams_.Encode()
  7380  	req, err := http.NewRequest("DELETE", urls, body)
  7381  	if err != nil {
  7382  		return nil, err
  7383  	}
  7384  	req.Header = reqHeaders
  7385  	googleapi.Expand(req.URL, map[string]string{
  7386  		"name": c.name,
  7387  	})
  7388  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7389  }
  7390  
  7391  // Do executes the "datacatalog.projects.locations.tagTemplates.delete" call.
  7392  // Any non-2xx status code is an error. Response headers are in either
  7393  // *Empty.ServerResponse.Header or (if a response was returned at all) in
  7394  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  7395  // whether the returned error was because http.StatusNotModified was returned.
  7396  func (c *ProjectsLocationsTagTemplatesDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
  7397  	gensupport.SetOptions(c.urlParams_, opts...)
  7398  	res, err := c.doRequest("json")
  7399  	if res != nil && res.StatusCode == http.StatusNotModified {
  7400  		if res.Body != nil {
  7401  			res.Body.Close()
  7402  		}
  7403  		return nil, gensupport.WrapError(&googleapi.Error{
  7404  			Code:   res.StatusCode,
  7405  			Header: res.Header,
  7406  		})
  7407  	}
  7408  	if err != nil {
  7409  		return nil, err
  7410  	}
  7411  	defer googleapi.CloseBody(res)
  7412  	if err := googleapi.CheckResponse(res); err != nil {
  7413  		return nil, gensupport.WrapError(err)
  7414  	}
  7415  	ret := &Empty{
  7416  		ServerResponse: googleapi.ServerResponse{
  7417  			Header:         res.Header,
  7418  			HTTPStatusCode: res.StatusCode,
  7419  		},
  7420  	}
  7421  	target := &ret
  7422  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7423  		return nil, err
  7424  	}
  7425  	return ret, nil
  7426  }
  7427  
  7428  type ProjectsLocationsTagTemplatesGetCall struct {
  7429  	s            *Service
  7430  	name         string
  7431  	urlParams_   gensupport.URLParams
  7432  	ifNoneMatch_ string
  7433  	ctx_         context.Context
  7434  	header_      http.Header
  7435  }
  7436  
  7437  // Get: Gets a tag template.
  7438  //
  7439  //   - name: The name of the tag template. Example: *
  7440  //     projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}.
  7441  func (r *ProjectsLocationsTagTemplatesService) Get(name string) *ProjectsLocationsTagTemplatesGetCall {
  7442  	c := &ProjectsLocationsTagTemplatesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7443  	c.name = name
  7444  	return c
  7445  }
  7446  
  7447  // Fields allows partial responses to be retrieved. See
  7448  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7449  // details.
  7450  func (c *ProjectsLocationsTagTemplatesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsTagTemplatesGetCall {
  7451  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7452  	return c
  7453  }
  7454  
  7455  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  7456  // object's ETag matches the given value. This is useful for getting updates
  7457  // only after the object has changed since the last request.
  7458  func (c *ProjectsLocationsTagTemplatesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsTagTemplatesGetCall {
  7459  	c.ifNoneMatch_ = entityTag
  7460  	return c
  7461  }
  7462  
  7463  // Context sets the context to be used in this call's Do method.
  7464  func (c *ProjectsLocationsTagTemplatesGetCall) Context(ctx context.Context) *ProjectsLocationsTagTemplatesGetCall {
  7465  	c.ctx_ = ctx
  7466  	return c
  7467  }
  7468  
  7469  // Header returns a http.Header that can be modified by the caller to add
  7470  // headers to the request.
  7471  func (c *ProjectsLocationsTagTemplatesGetCall) Header() http.Header {
  7472  	if c.header_ == nil {
  7473  		c.header_ = make(http.Header)
  7474  	}
  7475  	return c.header_
  7476  }
  7477  
  7478  func (c *ProjectsLocationsTagTemplatesGetCall) doRequest(alt string) (*http.Response, error) {
  7479  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  7480  	if c.ifNoneMatch_ != "" {
  7481  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  7482  	}
  7483  	var body io.Reader = nil
  7484  	c.urlParams_.Set("alt", alt)
  7485  	c.urlParams_.Set("prettyPrint", "false")
  7486  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
  7487  	urls += "?" + c.urlParams_.Encode()
  7488  	req, err := http.NewRequest("GET", urls, body)
  7489  	if err != nil {
  7490  		return nil, err
  7491  	}
  7492  	req.Header = reqHeaders
  7493  	googleapi.Expand(req.URL, map[string]string{
  7494  		"name": c.name,
  7495  	})
  7496  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7497  }
  7498  
  7499  // Do executes the "datacatalog.projects.locations.tagTemplates.get" call.
  7500  // Any non-2xx status code is an error. Response headers are in either
  7501  // *GoogleCloudDatacatalogV1beta1TagTemplate.ServerResponse.Header or (if a
  7502  // response was returned at all) in error.(*googleapi.Error).Header. Use
  7503  // googleapi.IsNotModified to check whether the returned error was because
  7504  // http.StatusNotModified was returned.
  7505  func (c *ProjectsLocationsTagTemplatesGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogV1beta1TagTemplate, error) {
  7506  	gensupport.SetOptions(c.urlParams_, opts...)
  7507  	res, err := c.doRequest("json")
  7508  	if res != nil && res.StatusCode == http.StatusNotModified {
  7509  		if res.Body != nil {
  7510  			res.Body.Close()
  7511  		}
  7512  		return nil, gensupport.WrapError(&googleapi.Error{
  7513  			Code:   res.StatusCode,
  7514  			Header: res.Header,
  7515  		})
  7516  	}
  7517  	if err != nil {
  7518  		return nil, err
  7519  	}
  7520  	defer googleapi.CloseBody(res)
  7521  	if err := googleapi.CheckResponse(res); err != nil {
  7522  		return nil, gensupport.WrapError(err)
  7523  	}
  7524  	ret := &GoogleCloudDatacatalogV1beta1TagTemplate{
  7525  		ServerResponse: googleapi.ServerResponse{
  7526  			Header:         res.Header,
  7527  			HTTPStatusCode: res.StatusCode,
  7528  		},
  7529  	}
  7530  	target := &ret
  7531  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7532  		return nil, err
  7533  	}
  7534  	return ret, nil
  7535  }
  7536  
  7537  type ProjectsLocationsTagTemplatesGetIamPolicyCall struct {
  7538  	s                   *Service
  7539  	resource            string
  7540  	getiampolicyrequest *GetIamPolicyRequest
  7541  	urlParams_          gensupport.URLParams
  7542  	ctx_                context.Context
  7543  	header_             http.Header
  7544  }
  7545  
  7546  // GetIamPolicy: Gets the access control policy for a resource. A `NOT_FOUND`
  7547  // error is returned if the resource does not exist. An empty policy is
  7548  // returned if the resource exists but does not have a policy set on it.
  7549  // Supported resources are: - Tag templates. - Entries. - Entry groups. Note,
  7550  // this method cannot be used to manage policies for BigQuery, Pub/Sub and any
  7551  // external Google Cloud Platform resources synced to Data Catalog. Callers
  7552  // must have following Google IAM permission -
  7553  // `datacatalog.tagTemplates.getIamPolicy` to get policies on tag templates. -
  7554  // `datacatalog.entries.getIamPolicy` to get policies on entries. -
  7555  // `datacatalog.entryGroups.getIamPolicy` to get policies on entry groups.
  7556  //
  7557  //   - resource: REQUIRED: The resource for which the policy is being requested.
  7558  //     See Resource names (https://cloud.google.com/apis/design/resource_names)
  7559  //     for the appropriate value for this field.
  7560  func (r *ProjectsLocationsTagTemplatesService) GetIamPolicy(resource string, getiampolicyrequest *GetIamPolicyRequest) *ProjectsLocationsTagTemplatesGetIamPolicyCall {
  7561  	c := &ProjectsLocationsTagTemplatesGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7562  	c.resource = resource
  7563  	c.getiampolicyrequest = getiampolicyrequest
  7564  	return c
  7565  }
  7566  
  7567  // Fields allows partial responses to be retrieved. See
  7568  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7569  // details.
  7570  func (c *ProjectsLocationsTagTemplatesGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsTagTemplatesGetIamPolicyCall {
  7571  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7572  	return c
  7573  }
  7574  
  7575  // Context sets the context to be used in this call's Do method.
  7576  func (c *ProjectsLocationsTagTemplatesGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsTagTemplatesGetIamPolicyCall {
  7577  	c.ctx_ = ctx
  7578  	return c
  7579  }
  7580  
  7581  // Header returns a http.Header that can be modified by the caller to add
  7582  // headers to the request.
  7583  func (c *ProjectsLocationsTagTemplatesGetIamPolicyCall) Header() http.Header {
  7584  	if c.header_ == nil {
  7585  		c.header_ = make(http.Header)
  7586  	}
  7587  	return c.header_
  7588  }
  7589  
  7590  func (c *ProjectsLocationsTagTemplatesGetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
  7591  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  7592  	var body io.Reader = nil
  7593  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.getiampolicyrequest)
  7594  	if err != nil {
  7595  		return nil, err
  7596  	}
  7597  	c.urlParams_.Set("alt", alt)
  7598  	c.urlParams_.Set("prettyPrint", "false")
  7599  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:getIamPolicy")
  7600  	urls += "?" + c.urlParams_.Encode()
  7601  	req, err := http.NewRequest("POST", urls, body)
  7602  	if err != nil {
  7603  		return nil, err
  7604  	}
  7605  	req.Header = reqHeaders
  7606  	googleapi.Expand(req.URL, map[string]string{
  7607  		"resource": c.resource,
  7608  	})
  7609  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7610  }
  7611  
  7612  // Do executes the "datacatalog.projects.locations.tagTemplates.getIamPolicy" call.
  7613  // Any non-2xx status code is an error. Response headers are in either
  7614  // *Policy.ServerResponse.Header or (if a response was returned at all) in
  7615  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  7616  // whether the returned error was because http.StatusNotModified was returned.
  7617  func (c *ProjectsLocationsTagTemplatesGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
  7618  	gensupport.SetOptions(c.urlParams_, opts...)
  7619  	res, err := c.doRequest("json")
  7620  	if res != nil && res.StatusCode == http.StatusNotModified {
  7621  		if res.Body != nil {
  7622  			res.Body.Close()
  7623  		}
  7624  		return nil, gensupport.WrapError(&googleapi.Error{
  7625  			Code:   res.StatusCode,
  7626  			Header: res.Header,
  7627  		})
  7628  	}
  7629  	if err != nil {
  7630  		return nil, err
  7631  	}
  7632  	defer googleapi.CloseBody(res)
  7633  	if err := googleapi.CheckResponse(res); err != nil {
  7634  		return nil, gensupport.WrapError(err)
  7635  	}
  7636  	ret := &Policy{
  7637  		ServerResponse: googleapi.ServerResponse{
  7638  			Header:         res.Header,
  7639  			HTTPStatusCode: res.StatusCode,
  7640  		},
  7641  	}
  7642  	target := &ret
  7643  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7644  		return nil, err
  7645  	}
  7646  	return ret, nil
  7647  }
  7648  
  7649  type ProjectsLocationsTagTemplatesPatchCall struct {
  7650  	s                                        *Service
  7651  	name                                     string
  7652  	googleclouddatacatalogv1beta1tagtemplate *GoogleCloudDatacatalogV1beta1TagTemplate
  7653  	urlParams_                               gensupport.URLParams
  7654  	ctx_                                     context.Context
  7655  	header_                                  http.Header
  7656  }
  7657  
  7658  // Patch: Updates a tag template. This method cannot be used to update the
  7659  // fields of a template. The tag template fields are represented as separate
  7660  // resources and should be updated using their own create/update/delete
  7661  // methods. Users should enable the Data Catalog API in the project identified
  7662  // by the `tag_template.name` parameter (see [Data Catalog Resource Project]
  7663  // (https://cloud.google.com/data-catalog/docs/concepts/resource-project) for
  7664  // more information).
  7665  //
  7666  //   - name: Identifier. The resource name of the tag template in URL format.
  7667  //     Example: *
  7668  //     projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}
  7669  //     Note that this TagTemplate and its child resources may not actually be
  7670  //     stored in the location in this name.
  7671  func (r *ProjectsLocationsTagTemplatesService) Patch(name string, googleclouddatacatalogv1beta1tagtemplate *GoogleCloudDatacatalogV1beta1TagTemplate) *ProjectsLocationsTagTemplatesPatchCall {
  7672  	c := &ProjectsLocationsTagTemplatesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7673  	c.name = name
  7674  	c.googleclouddatacatalogv1beta1tagtemplate = googleclouddatacatalogv1beta1tagtemplate
  7675  	return c
  7676  }
  7677  
  7678  // UpdateMask sets the optional parameter "updateMask": Names of fields whose
  7679  // values to overwrite on a tag template. Currently, only `display_name` can be
  7680  // overwritten. In general, if this parameter is absent or empty, all
  7681  // modifiable fields are overwritten. If such fields are non-required and
  7682  // omitted in the request body, their values are emptied.
  7683  func (c *ProjectsLocationsTagTemplatesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsTagTemplatesPatchCall {
  7684  	c.urlParams_.Set("updateMask", updateMask)
  7685  	return c
  7686  }
  7687  
  7688  // Fields allows partial responses to be retrieved. See
  7689  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7690  // details.
  7691  func (c *ProjectsLocationsTagTemplatesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsTagTemplatesPatchCall {
  7692  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7693  	return c
  7694  }
  7695  
  7696  // Context sets the context to be used in this call's Do method.
  7697  func (c *ProjectsLocationsTagTemplatesPatchCall) Context(ctx context.Context) *ProjectsLocationsTagTemplatesPatchCall {
  7698  	c.ctx_ = ctx
  7699  	return c
  7700  }
  7701  
  7702  // Header returns a http.Header that can be modified by the caller to add
  7703  // headers to the request.
  7704  func (c *ProjectsLocationsTagTemplatesPatchCall) Header() http.Header {
  7705  	if c.header_ == nil {
  7706  		c.header_ = make(http.Header)
  7707  	}
  7708  	return c.header_
  7709  }
  7710  
  7711  func (c *ProjectsLocationsTagTemplatesPatchCall) doRequest(alt string) (*http.Response, error) {
  7712  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  7713  	var body io.Reader = nil
  7714  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddatacatalogv1beta1tagtemplate)
  7715  	if err != nil {
  7716  		return nil, err
  7717  	}
  7718  	c.urlParams_.Set("alt", alt)
  7719  	c.urlParams_.Set("prettyPrint", "false")
  7720  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
  7721  	urls += "?" + c.urlParams_.Encode()
  7722  	req, err := http.NewRequest("PATCH", urls, body)
  7723  	if err != nil {
  7724  		return nil, err
  7725  	}
  7726  	req.Header = reqHeaders
  7727  	googleapi.Expand(req.URL, map[string]string{
  7728  		"name": c.name,
  7729  	})
  7730  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7731  }
  7732  
  7733  // Do executes the "datacatalog.projects.locations.tagTemplates.patch" call.
  7734  // Any non-2xx status code is an error. Response headers are in either
  7735  // *GoogleCloudDatacatalogV1beta1TagTemplate.ServerResponse.Header or (if a
  7736  // response was returned at all) in error.(*googleapi.Error).Header. Use
  7737  // googleapi.IsNotModified to check whether the returned error was because
  7738  // http.StatusNotModified was returned.
  7739  func (c *ProjectsLocationsTagTemplatesPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogV1beta1TagTemplate, error) {
  7740  	gensupport.SetOptions(c.urlParams_, opts...)
  7741  	res, err := c.doRequest("json")
  7742  	if res != nil && res.StatusCode == http.StatusNotModified {
  7743  		if res.Body != nil {
  7744  			res.Body.Close()
  7745  		}
  7746  		return nil, gensupport.WrapError(&googleapi.Error{
  7747  			Code:   res.StatusCode,
  7748  			Header: res.Header,
  7749  		})
  7750  	}
  7751  	if err != nil {
  7752  		return nil, err
  7753  	}
  7754  	defer googleapi.CloseBody(res)
  7755  	if err := googleapi.CheckResponse(res); err != nil {
  7756  		return nil, gensupport.WrapError(err)
  7757  	}
  7758  	ret := &GoogleCloudDatacatalogV1beta1TagTemplate{
  7759  		ServerResponse: googleapi.ServerResponse{
  7760  			Header:         res.Header,
  7761  			HTTPStatusCode: res.StatusCode,
  7762  		},
  7763  	}
  7764  	target := &ret
  7765  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7766  		return nil, err
  7767  	}
  7768  	return ret, nil
  7769  }
  7770  
  7771  type ProjectsLocationsTagTemplatesSetIamPolicyCall struct {
  7772  	s                   *Service
  7773  	resource            string
  7774  	setiampolicyrequest *SetIamPolicyRequest
  7775  	urlParams_          gensupport.URLParams
  7776  	ctx_                context.Context
  7777  	header_             http.Header
  7778  }
  7779  
  7780  // SetIamPolicy: Sets the access control policy for a resource. Replaces any
  7781  // existing policy. Supported resources are: - Tag templates. - Entries. -
  7782  // Entry groups. Note, this method cannot be used to manage policies for
  7783  // BigQuery, Pub/Sub and any external Google Cloud Platform resources synced to
  7784  // Data Catalog. Callers must have following Google IAM permission -
  7785  // `datacatalog.tagTemplates.setIamPolicy` to set policies on tag templates. -
  7786  // `datacatalog.entries.setIamPolicy` to set policies on entries. -
  7787  // `datacatalog.entryGroups.setIamPolicy` to set policies on entry groups.
  7788  //
  7789  //   - resource: REQUIRED: The resource for which the policy is being specified.
  7790  //     See Resource names (https://cloud.google.com/apis/design/resource_names)
  7791  //     for the appropriate value for this field.
  7792  func (r *ProjectsLocationsTagTemplatesService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsLocationsTagTemplatesSetIamPolicyCall {
  7793  	c := &ProjectsLocationsTagTemplatesSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7794  	c.resource = resource
  7795  	c.setiampolicyrequest = setiampolicyrequest
  7796  	return c
  7797  }
  7798  
  7799  // Fields allows partial responses to be retrieved. See
  7800  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7801  // details.
  7802  func (c *ProjectsLocationsTagTemplatesSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsTagTemplatesSetIamPolicyCall {
  7803  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7804  	return c
  7805  }
  7806  
  7807  // Context sets the context to be used in this call's Do method.
  7808  func (c *ProjectsLocationsTagTemplatesSetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsTagTemplatesSetIamPolicyCall {
  7809  	c.ctx_ = ctx
  7810  	return c
  7811  }
  7812  
  7813  // Header returns a http.Header that can be modified by the caller to add
  7814  // headers to the request.
  7815  func (c *ProjectsLocationsTagTemplatesSetIamPolicyCall) Header() http.Header {
  7816  	if c.header_ == nil {
  7817  		c.header_ = make(http.Header)
  7818  	}
  7819  	return c.header_
  7820  }
  7821  
  7822  func (c *ProjectsLocationsTagTemplatesSetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
  7823  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  7824  	var body io.Reader = nil
  7825  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest)
  7826  	if err != nil {
  7827  		return nil, err
  7828  	}
  7829  	c.urlParams_.Set("alt", alt)
  7830  	c.urlParams_.Set("prettyPrint", "false")
  7831  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:setIamPolicy")
  7832  	urls += "?" + c.urlParams_.Encode()
  7833  	req, err := http.NewRequest("POST", urls, body)
  7834  	if err != nil {
  7835  		return nil, err
  7836  	}
  7837  	req.Header = reqHeaders
  7838  	googleapi.Expand(req.URL, map[string]string{
  7839  		"resource": c.resource,
  7840  	})
  7841  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7842  }
  7843  
  7844  // Do executes the "datacatalog.projects.locations.tagTemplates.setIamPolicy" call.
  7845  // Any non-2xx status code is an error. Response headers are in either
  7846  // *Policy.ServerResponse.Header or (if a response was returned at all) in
  7847  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  7848  // whether the returned error was because http.StatusNotModified was returned.
  7849  func (c *ProjectsLocationsTagTemplatesSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
  7850  	gensupport.SetOptions(c.urlParams_, opts...)
  7851  	res, err := c.doRequest("json")
  7852  	if res != nil && res.StatusCode == http.StatusNotModified {
  7853  		if res.Body != nil {
  7854  			res.Body.Close()
  7855  		}
  7856  		return nil, gensupport.WrapError(&googleapi.Error{
  7857  			Code:   res.StatusCode,
  7858  			Header: res.Header,
  7859  		})
  7860  	}
  7861  	if err != nil {
  7862  		return nil, err
  7863  	}
  7864  	defer googleapi.CloseBody(res)
  7865  	if err := googleapi.CheckResponse(res); err != nil {
  7866  		return nil, gensupport.WrapError(err)
  7867  	}
  7868  	ret := &Policy{
  7869  		ServerResponse: googleapi.ServerResponse{
  7870  			Header:         res.Header,
  7871  			HTTPStatusCode: res.StatusCode,
  7872  		},
  7873  	}
  7874  	target := &ret
  7875  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7876  		return nil, err
  7877  	}
  7878  	return ret, nil
  7879  }
  7880  
  7881  type ProjectsLocationsTagTemplatesTestIamPermissionsCall struct {
  7882  	s                         *Service
  7883  	resource                  string
  7884  	testiampermissionsrequest *TestIamPermissionsRequest
  7885  	urlParams_                gensupport.URLParams
  7886  	ctx_                      context.Context
  7887  	header_                   http.Header
  7888  }
  7889  
  7890  // TestIamPermissions: Returns the caller's permissions on a resource. If the
  7891  // resource does not exist, an empty set of permissions is returned (We don't
  7892  // return a `NOT_FOUND` error). Supported resources are: - Tag templates. -
  7893  // Entries. - Entry groups. Note, this method cannot be used to manage policies
  7894  // for BigQuery, Pub/Sub and any external Google Cloud Platform resources
  7895  // synced to Data Catalog. A caller is not required to have Google IAM
  7896  // permission to make this request.
  7897  //
  7898  //   - resource: REQUIRED: The resource for which the policy detail is being
  7899  //     requested. See Resource names
  7900  //     (https://cloud.google.com/apis/design/resource_names) for the appropriate
  7901  //     value for this field.
  7902  func (r *ProjectsLocationsTagTemplatesService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsLocationsTagTemplatesTestIamPermissionsCall {
  7903  	c := &ProjectsLocationsTagTemplatesTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7904  	c.resource = resource
  7905  	c.testiampermissionsrequest = testiampermissionsrequest
  7906  	return c
  7907  }
  7908  
  7909  // Fields allows partial responses to be retrieved. See
  7910  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7911  // details.
  7912  func (c *ProjectsLocationsTagTemplatesTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsLocationsTagTemplatesTestIamPermissionsCall {
  7913  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7914  	return c
  7915  }
  7916  
  7917  // Context sets the context to be used in this call's Do method.
  7918  func (c *ProjectsLocationsTagTemplatesTestIamPermissionsCall) Context(ctx context.Context) *ProjectsLocationsTagTemplatesTestIamPermissionsCall {
  7919  	c.ctx_ = ctx
  7920  	return c
  7921  }
  7922  
  7923  // Header returns a http.Header that can be modified by the caller to add
  7924  // headers to the request.
  7925  func (c *ProjectsLocationsTagTemplatesTestIamPermissionsCall) Header() http.Header {
  7926  	if c.header_ == nil {
  7927  		c.header_ = make(http.Header)
  7928  	}
  7929  	return c.header_
  7930  }
  7931  
  7932  func (c *ProjectsLocationsTagTemplatesTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) {
  7933  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  7934  	var body io.Reader = nil
  7935  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest)
  7936  	if err != nil {
  7937  		return nil, err
  7938  	}
  7939  	c.urlParams_.Set("alt", alt)
  7940  	c.urlParams_.Set("prettyPrint", "false")
  7941  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:testIamPermissions")
  7942  	urls += "?" + c.urlParams_.Encode()
  7943  	req, err := http.NewRequest("POST", urls, body)
  7944  	if err != nil {
  7945  		return nil, err
  7946  	}
  7947  	req.Header = reqHeaders
  7948  	googleapi.Expand(req.URL, map[string]string{
  7949  		"resource": c.resource,
  7950  	})
  7951  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7952  }
  7953  
  7954  // Do executes the "datacatalog.projects.locations.tagTemplates.testIamPermissions" call.
  7955  // Any non-2xx status code is an error. Response headers are in either
  7956  // *TestIamPermissionsResponse.ServerResponse.Header or (if a response was
  7957  // returned at all) in error.(*googleapi.Error).Header. Use
  7958  // googleapi.IsNotModified to check whether the returned error was because
  7959  // http.StatusNotModified was returned.
  7960  func (c *ProjectsLocationsTagTemplatesTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) {
  7961  	gensupport.SetOptions(c.urlParams_, opts...)
  7962  	res, err := c.doRequest("json")
  7963  	if res != nil && res.StatusCode == http.StatusNotModified {
  7964  		if res.Body != nil {
  7965  			res.Body.Close()
  7966  		}
  7967  		return nil, gensupport.WrapError(&googleapi.Error{
  7968  			Code:   res.StatusCode,
  7969  			Header: res.Header,
  7970  		})
  7971  	}
  7972  	if err != nil {
  7973  		return nil, err
  7974  	}
  7975  	defer googleapi.CloseBody(res)
  7976  	if err := googleapi.CheckResponse(res); err != nil {
  7977  		return nil, gensupport.WrapError(err)
  7978  	}
  7979  	ret := &TestIamPermissionsResponse{
  7980  		ServerResponse: googleapi.ServerResponse{
  7981  			Header:         res.Header,
  7982  			HTTPStatusCode: res.StatusCode,
  7983  		},
  7984  	}
  7985  	target := &ret
  7986  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7987  		return nil, err
  7988  	}
  7989  	return ret, nil
  7990  }
  7991  
  7992  type ProjectsLocationsTagTemplatesFieldsCreateCall struct {
  7993  	s                                             *Service
  7994  	parent                                        string
  7995  	googleclouddatacatalogv1beta1tagtemplatefield *GoogleCloudDatacatalogV1beta1TagTemplateField
  7996  	urlParams_                                    gensupport.URLParams
  7997  	ctx_                                          context.Context
  7998  	header_                                       http.Header
  7999  }
  8000  
  8001  // Create: Creates a field in a tag template. The user should enable the Data
  8002  // Catalog API in the project identified by the `parent` parameter (see Data
  8003  // Catalog Resource Project
  8004  // (https://cloud.google.com/data-catalog/docs/concepts/resource-project) for
  8005  // more information).
  8006  //
  8007  //   - parent: The name of the project and the template location region
  8008  //     (https://cloud.google.com/data-catalog/docs/concepts/regions). Example: *
  8009  //     projects/{project_id}/locations/us-central1/tagTemplates/{tag_template_id}.
  8010  func (r *ProjectsLocationsTagTemplatesFieldsService) Create(parent string, googleclouddatacatalogv1beta1tagtemplatefield *GoogleCloudDatacatalogV1beta1TagTemplateField) *ProjectsLocationsTagTemplatesFieldsCreateCall {
  8011  	c := &ProjectsLocationsTagTemplatesFieldsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8012  	c.parent = parent
  8013  	c.googleclouddatacatalogv1beta1tagtemplatefield = googleclouddatacatalogv1beta1tagtemplatefield
  8014  	return c
  8015  }
  8016  
  8017  // TagTemplateFieldId sets the optional parameter "tagTemplateFieldId":
  8018  // Required. The ID of the tag template field to create. Field ids can contain
  8019  // letters (both uppercase and lowercase), numbers (0-9), underscores (_) and
  8020  // dashes (-). Field IDs must be at least 1 character long and at most 128
  8021  // characters long. Field IDs must also be unique within their template.
  8022  func (c *ProjectsLocationsTagTemplatesFieldsCreateCall) TagTemplateFieldId(tagTemplateFieldId string) *ProjectsLocationsTagTemplatesFieldsCreateCall {
  8023  	c.urlParams_.Set("tagTemplateFieldId", tagTemplateFieldId)
  8024  	return c
  8025  }
  8026  
  8027  // Fields allows partial responses to be retrieved. See
  8028  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8029  // details.
  8030  func (c *ProjectsLocationsTagTemplatesFieldsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsTagTemplatesFieldsCreateCall {
  8031  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8032  	return c
  8033  }
  8034  
  8035  // Context sets the context to be used in this call's Do method.
  8036  func (c *ProjectsLocationsTagTemplatesFieldsCreateCall) Context(ctx context.Context) *ProjectsLocationsTagTemplatesFieldsCreateCall {
  8037  	c.ctx_ = ctx
  8038  	return c
  8039  }
  8040  
  8041  // Header returns a http.Header that can be modified by the caller to add
  8042  // headers to the request.
  8043  func (c *ProjectsLocationsTagTemplatesFieldsCreateCall) Header() http.Header {
  8044  	if c.header_ == nil {
  8045  		c.header_ = make(http.Header)
  8046  	}
  8047  	return c.header_
  8048  }
  8049  
  8050  func (c *ProjectsLocationsTagTemplatesFieldsCreateCall) doRequest(alt string) (*http.Response, error) {
  8051  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  8052  	var body io.Reader = nil
  8053  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddatacatalogv1beta1tagtemplatefield)
  8054  	if err != nil {
  8055  		return nil, err
  8056  	}
  8057  	c.urlParams_.Set("alt", alt)
  8058  	c.urlParams_.Set("prettyPrint", "false")
  8059  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/fields")
  8060  	urls += "?" + c.urlParams_.Encode()
  8061  	req, err := http.NewRequest("POST", urls, body)
  8062  	if err != nil {
  8063  		return nil, err
  8064  	}
  8065  	req.Header = reqHeaders
  8066  	googleapi.Expand(req.URL, map[string]string{
  8067  		"parent": c.parent,
  8068  	})
  8069  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8070  }
  8071  
  8072  // Do executes the "datacatalog.projects.locations.tagTemplates.fields.create" call.
  8073  // Any non-2xx status code is an error. Response headers are in either
  8074  // *GoogleCloudDatacatalogV1beta1TagTemplateField.ServerResponse.Header or (if
  8075  // a response was returned at all) in error.(*googleapi.Error).Header. Use
  8076  // googleapi.IsNotModified to check whether the returned error was because
  8077  // http.StatusNotModified was returned.
  8078  func (c *ProjectsLocationsTagTemplatesFieldsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogV1beta1TagTemplateField, error) {
  8079  	gensupport.SetOptions(c.urlParams_, opts...)
  8080  	res, err := c.doRequest("json")
  8081  	if res != nil && res.StatusCode == http.StatusNotModified {
  8082  		if res.Body != nil {
  8083  			res.Body.Close()
  8084  		}
  8085  		return nil, gensupport.WrapError(&googleapi.Error{
  8086  			Code:   res.StatusCode,
  8087  			Header: res.Header,
  8088  		})
  8089  	}
  8090  	if err != nil {
  8091  		return nil, err
  8092  	}
  8093  	defer googleapi.CloseBody(res)
  8094  	if err := googleapi.CheckResponse(res); err != nil {
  8095  		return nil, gensupport.WrapError(err)
  8096  	}
  8097  	ret := &GoogleCloudDatacatalogV1beta1TagTemplateField{
  8098  		ServerResponse: googleapi.ServerResponse{
  8099  			Header:         res.Header,
  8100  			HTTPStatusCode: res.StatusCode,
  8101  		},
  8102  	}
  8103  	target := &ret
  8104  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8105  		return nil, err
  8106  	}
  8107  	return ret, nil
  8108  }
  8109  
  8110  type ProjectsLocationsTagTemplatesFieldsDeleteCall struct {
  8111  	s          *Service
  8112  	name       string
  8113  	urlParams_ gensupport.URLParams
  8114  	ctx_       context.Context
  8115  	header_    http.Header
  8116  }
  8117  
  8118  // Delete: Deletes a field in a tag template and all uses of that field. Users
  8119  // should enable the Data Catalog API in the project identified by the `name`
  8120  // parameter (see [Data Catalog Resource Project]
  8121  // (https://cloud.google.com/data-catalog/docs/concepts/resource-project) for
  8122  // more information).
  8123  //
  8124  //   - name: The name of the tag template field to delete. Example: *
  8125  //     projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}/f
  8126  //     ields/{tag_template_field_id}.
  8127  func (r *ProjectsLocationsTagTemplatesFieldsService) Delete(name string) *ProjectsLocationsTagTemplatesFieldsDeleteCall {
  8128  	c := &ProjectsLocationsTagTemplatesFieldsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8129  	c.name = name
  8130  	return c
  8131  }
  8132  
  8133  // Force sets the optional parameter "force": Required. Currently, this field
  8134  // must always be set to `true`. This confirms the deletion of this field from
  8135  // any tags using this field. `force = false` will be supported in the future.
  8136  func (c *ProjectsLocationsTagTemplatesFieldsDeleteCall) Force(force bool) *ProjectsLocationsTagTemplatesFieldsDeleteCall {
  8137  	c.urlParams_.Set("force", fmt.Sprint(force))
  8138  	return c
  8139  }
  8140  
  8141  // Fields allows partial responses to be retrieved. See
  8142  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8143  // details.
  8144  func (c *ProjectsLocationsTagTemplatesFieldsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsTagTemplatesFieldsDeleteCall {
  8145  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8146  	return c
  8147  }
  8148  
  8149  // Context sets the context to be used in this call's Do method.
  8150  func (c *ProjectsLocationsTagTemplatesFieldsDeleteCall) Context(ctx context.Context) *ProjectsLocationsTagTemplatesFieldsDeleteCall {
  8151  	c.ctx_ = ctx
  8152  	return c
  8153  }
  8154  
  8155  // Header returns a http.Header that can be modified by the caller to add
  8156  // headers to the request.
  8157  func (c *ProjectsLocationsTagTemplatesFieldsDeleteCall) Header() http.Header {
  8158  	if c.header_ == nil {
  8159  		c.header_ = make(http.Header)
  8160  	}
  8161  	return c.header_
  8162  }
  8163  
  8164  func (c *ProjectsLocationsTagTemplatesFieldsDeleteCall) doRequest(alt string) (*http.Response, error) {
  8165  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  8166  	var body io.Reader = nil
  8167  	c.urlParams_.Set("alt", alt)
  8168  	c.urlParams_.Set("prettyPrint", "false")
  8169  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
  8170  	urls += "?" + c.urlParams_.Encode()
  8171  	req, err := http.NewRequest("DELETE", urls, body)
  8172  	if err != nil {
  8173  		return nil, err
  8174  	}
  8175  	req.Header = reqHeaders
  8176  	googleapi.Expand(req.URL, map[string]string{
  8177  		"name": c.name,
  8178  	})
  8179  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8180  }
  8181  
  8182  // Do executes the "datacatalog.projects.locations.tagTemplates.fields.delete" call.
  8183  // Any non-2xx status code is an error. Response headers are in either
  8184  // *Empty.ServerResponse.Header or (if a response was returned at all) in
  8185  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  8186  // whether the returned error was because http.StatusNotModified was returned.
  8187  func (c *ProjectsLocationsTagTemplatesFieldsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
  8188  	gensupport.SetOptions(c.urlParams_, opts...)
  8189  	res, err := c.doRequest("json")
  8190  	if res != nil && res.StatusCode == http.StatusNotModified {
  8191  		if res.Body != nil {
  8192  			res.Body.Close()
  8193  		}
  8194  		return nil, gensupport.WrapError(&googleapi.Error{
  8195  			Code:   res.StatusCode,
  8196  			Header: res.Header,
  8197  		})
  8198  	}
  8199  	if err != nil {
  8200  		return nil, err
  8201  	}
  8202  	defer googleapi.CloseBody(res)
  8203  	if err := googleapi.CheckResponse(res); err != nil {
  8204  		return nil, gensupport.WrapError(err)
  8205  	}
  8206  	ret := &Empty{
  8207  		ServerResponse: googleapi.ServerResponse{
  8208  			Header:         res.Header,
  8209  			HTTPStatusCode: res.StatusCode,
  8210  		},
  8211  	}
  8212  	target := &ret
  8213  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8214  		return nil, err
  8215  	}
  8216  	return ret, nil
  8217  }
  8218  
  8219  type ProjectsLocationsTagTemplatesFieldsPatchCall struct {
  8220  	s                                             *Service
  8221  	name                                          string
  8222  	googleclouddatacatalogv1beta1tagtemplatefield *GoogleCloudDatacatalogV1beta1TagTemplateField
  8223  	urlParams_                                    gensupport.URLParams
  8224  	ctx_                                          context.Context
  8225  	header_                                       http.Header
  8226  }
  8227  
  8228  // Patch: Updates a field in a tag template. This method cannot be used to
  8229  // update the field type. Users should enable the Data Catalog API in the
  8230  // project identified by the `name` parameter (see [Data Catalog Resource
  8231  // Project]
  8232  // (https://cloud.google.com/data-catalog/docs/concepts/resource-project) for
  8233  // more information).
  8234  //
  8235  //   - name: The name of the tag template field. Example: *
  8236  //     projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}/f
  8237  //     ields/{tag_template_field_id}.
  8238  func (r *ProjectsLocationsTagTemplatesFieldsService) Patch(name string, googleclouddatacatalogv1beta1tagtemplatefield *GoogleCloudDatacatalogV1beta1TagTemplateField) *ProjectsLocationsTagTemplatesFieldsPatchCall {
  8239  	c := &ProjectsLocationsTagTemplatesFieldsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8240  	c.name = name
  8241  	c.googleclouddatacatalogv1beta1tagtemplatefield = googleclouddatacatalogv1beta1tagtemplatefield
  8242  	return c
  8243  }
  8244  
  8245  // UpdateMask sets the optional parameter "updateMask": Names of fields whose
  8246  // values to overwrite on an individual field of a tag template. The following
  8247  // fields are modifiable: * `display_name` * `type.enum_type` * `is_required`
  8248  // If this parameter is absent or empty, all modifiable fields are overwritten.
  8249  // If such fields are non-required and omitted in the request body, their
  8250  // values are emptied with one exception: when updating an enum type, the
  8251  // provided values are merged with the existing values. Therefore, enum values
  8252  // can only be added, existing enum values cannot be deleted or renamed.
  8253  // Additionally, updating a template field from optional to required is *not*
  8254  // allowed.
  8255  func (c *ProjectsLocationsTagTemplatesFieldsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsTagTemplatesFieldsPatchCall {
  8256  	c.urlParams_.Set("updateMask", updateMask)
  8257  	return c
  8258  }
  8259  
  8260  // Fields allows partial responses to be retrieved. See
  8261  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8262  // details.
  8263  func (c *ProjectsLocationsTagTemplatesFieldsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsTagTemplatesFieldsPatchCall {
  8264  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8265  	return c
  8266  }
  8267  
  8268  // Context sets the context to be used in this call's Do method.
  8269  func (c *ProjectsLocationsTagTemplatesFieldsPatchCall) Context(ctx context.Context) *ProjectsLocationsTagTemplatesFieldsPatchCall {
  8270  	c.ctx_ = ctx
  8271  	return c
  8272  }
  8273  
  8274  // Header returns a http.Header that can be modified by the caller to add
  8275  // headers to the request.
  8276  func (c *ProjectsLocationsTagTemplatesFieldsPatchCall) Header() http.Header {
  8277  	if c.header_ == nil {
  8278  		c.header_ = make(http.Header)
  8279  	}
  8280  	return c.header_
  8281  }
  8282  
  8283  func (c *ProjectsLocationsTagTemplatesFieldsPatchCall) doRequest(alt string) (*http.Response, error) {
  8284  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  8285  	var body io.Reader = nil
  8286  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddatacatalogv1beta1tagtemplatefield)
  8287  	if err != nil {
  8288  		return nil, err
  8289  	}
  8290  	c.urlParams_.Set("alt", alt)
  8291  	c.urlParams_.Set("prettyPrint", "false")
  8292  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
  8293  	urls += "?" + c.urlParams_.Encode()
  8294  	req, err := http.NewRequest("PATCH", urls, body)
  8295  	if err != nil {
  8296  		return nil, err
  8297  	}
  8298  	req.Header = reqHeaders
  8299  	googleapi.Expand(req.URL, map[string]string{
  8300  		"name": c.name,
  8301  	})
  8302  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8303  }
  8304  
  8305  // Do executes the "datacatalog.projects.locations.tagTemplates.fields.patch" call.
  8306  // Any non-2xx status code is an error. Response headers are in either
  8307  // *GoogleCloudDatacatalogV1beta1TagTemplateField.ServerResponse.Header or (if
  8308  // a response was returned at all) in error.(*googleapi.Error).Header. Use
  8309  // googleapi.IsNotModified to check whether the returned error was because
  8310  // http.StatusNotModified was returned.
  8311  func (c *ProjectsLocationsTagTemplatesFieldsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogV1beta1TagTemplateField, error) {
  8312  	gensupport.SetOptions(c.urlParams_, opts...)
  8313  	res, err := c.doRequest("json")
  8314  	if res != nil && res.StatusCode == http.StatusNotModified {
  8315  		if res.Body != nil {
  8316  			res.Body.Close()
  8317  		}
  8318  		return nil, gensupport.WrapError(&googleapi.Error{
  8319  			Code:   res.StatusCode,
  8320  			Header: res.Header,
  8321  		})
  8322  	}
  8323  	if err != nil {
  8324  		return nil, err
  8325  	}
  8326  	defer googleapi.CloseBody(res)
  8327  	if err := googleapi.CheckResponse(res); err != nil {
  8328  		return nil, gensupport.WrapError(err)
  8329  	}
  8330  	ret := &GoogleCloudDatacatalogV1beta1TagTemplateField{
  8331  		ServerResponse: googleapi.ServerResponse{
  8332  			Header:         res.Header,
  8333  			HTTPStatusCode: res.StatusCode,
  8334  		},
  8335  	}
  8336  	target := &ret
  8337  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8338  		return nil, err
  8339  	}
  8340  	return ret, nil
  8341  }
  8342  
  8343  type ProjectsLocationsTagTemplatesFieldsRenameCall struct {
  8344  	s                                                          *Service
  8345  	name                                                       string
  8346  	googleclouddatacatalogv1beta1renametagtemplatefieldrequest *GoogleCloudDatacatalogV1beta1RenameTagTemplateFieldRequest
  8347  	urlParams_                                                 gensupport.URLParams
  8348  	ctx_                                                       context.Context
  8349  	header_                                                    http.Header
  8350  }
  8351  
  8352  // Rename: Renames a field in a tag template. The user should enable the Data
  8353  // Catalog API in the project identified by the `name` parameter (see Data
  8354  // Catalog Resource Project
  8355  // (https://cloud.google.com/data-catalog/docs/concepts/resource-project) for
  8356  // more information).
  8357  //
  8358  //   - name: The name of the tag template. Example: *
  8359  //     projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}/f
  8360  //     ields/{tag_template_field_id}.
  8361  func (r *ProjectsLocationsTagTemplatesFieldsService) Rename(name string, googleclouddatacatalogv1beta1renametagtemplatefieldrequest *GoogleCloudDatacatalogV1beta1RenameTagTemplateFieldRequest) *ProjectsLocationsTagTemplatesFieldsRenameCall {
  8362  	c := &ProjectsLocationsTagTemplatesFieldsRenameCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8363  	c.name = name
  8364  	c.googleclouddatacatalogv1beta1renametagtemplatefieldrequest = googleclouddatacatalogv1beta1renametagtemplatefieldrequest
  8365  	return c
  8366  }
  8367  
  8368  // Fields allows partial responses to be retrieved. See
  8369  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8370  // details.
  8371  func (c *ProjectsLocationsTagTemplatesFieldsRenameCall) Fields(s ...googleapi.Field) *ProjectsLocationsTagTemplatesFieldsRenameCall {
  8372  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8373  	return c
  8374  }
  8375  
  8376  // Context sets the context to be used in this call's Do method.
  8377  func (c *ProjectsLocationsTagTemplatesFieldsRenameCall) Context(ctx context.Context) *ProjectsLocationsTagTemplatesFieldsRenameCall {
  8378  	c.ctx_ = ctx
  8379  	return c
  8380  }
  8381  
  8382  // Header returns a http.Header that can be modified by the caller to add
  8383  // headers to the request.
  8384  func (c *ProjectsLocationsTagTemplatesFieldsRenameCall) Header() http.Header {
  8385  	if c.header_ == nil {
  8386  		c.header_ = make(http.Header)
  8387  	}
  8388  	return c.header_
  8389  }
  8390  
  8391  func (c *ProjectsLocationsTagTemplatesFieldsRenameCall) doRequest(alt string) (*http.Response, error) {
  8392  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  8393  	var body io.Reader = nil
  8394  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddatacatalogv1beta1renametagtemplatefieldrequest)
  8395  	if err != nil {
  8396  		return nil, err
  8397  	}
  8398  	c.urlParams_.Set("alt", alt)
  8399  	c.urlParams_.Set("prettyPrint", "false")
  8400  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}:rename")
  8401  	urls += "?" + c.urlParams_.Encode()
  8402  	req, err := http.NewRequest("POST", urls, body)
  8403  	if err != nil {
  8404  		return nil, err
  8405  	}
  8406  	req.Header = reqHeaders
  8407  	googleapi.Expand(req.URL, map[string]string{
  8408  		"name": c.name,
  8409  	})
  8410  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8411  }
  8412  
  8413  // Do executes the "datacatalog.projects.locations.tagTemplates.fields.rename" call.
  8414  // Any non-2xx status code is an error. Response headers are in either
  8415  // *GoogleCloudDatacatalogV1beta1TagTemplateField.ServerResponse.Header or (if
  8416  // a response was returned at all) in error.(*googleapi.Error).Header. Use
  8417  // googleapi.IsNotModified to check whether the returned error was because
  8418  // http.StatusNotModified was returned.
  8419  func (c *ProjectsLocationsTagTemplatesFieldsRenameCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogV1beta1TagTemplateField, error) {
  8420  	gensupport.SetOptions(c.urlParams_, opts...)
  8421  	res, err := c.doRequest("json")
  8422  	if res != nil && res.StatusCode == http.StatusNotModified {
  8423  		if res.Body != nil {
  8424  			res.Body.Close()
  8425  		}
  8426  		return nil, gensupport.WrapError(&googleapi.Error{
  8427  			Code:   res.StatusCode,
  8428  			Header: res.Header,
  8429  		})
  8430  	}
  8431  	if err != nil {
  8432  		return nil, err
  8433  	}
  8434  	defer googleapi.CloseBody(res)
  8435  	if err := googleapi.CheckResponse(res); err != nil {
  8436  		return nil, gensupport.WrapError(err)
  8437  	}
  8438  	ret := &GoogleCloudDatacatalogV1beta1TagTemplateField{
  8439  		ServerResponse: googleapi.ServerResponse{
  8440  			Header:         res.Header,
  8441  			HTTPStatusCode: res.StatusCode,
  8442  		},
  8443  	}
  8444  	target := &ret
  8445  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8446  		return nil, err
  8447  	}
  8448  	return ret, nil
  8449  }
  8450  
  8451  type ProjectsLocationsTagTemplatesFieldsEnumValuesRenameCall struct {
  8452  	s                                                                   *Service
  8453  	name                                                                string
  8454  	googleclouddatacatalogv1beta1renametagtemplatefieldenumvaluerequest *GoogleCloudDatacatalogV1beta1RenameTagTemplateFieldEnumValueRequest
  8455  	urlParams_                                                          gensupport.URLParams
  8456  	ctx_                                                                context.Context
  8457  	header_                                                             http.Header
  8458  }
  8459  
  8460  // Rename: Renames an enum value in a tag template. The enum values have to be
  8461  // unique within one enum field. Thus, an enum value cannot be renamed with a
  8462  // name used in any other enum value within the same enum field.
  8463  //
  8464  //   - name: The name of the enum field value. Example: *
  8465  //     projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}/f
  8466  //     ields/{tag_template_field_id}/enumValues/{enum_value_display_name}.
  8467  func (r *ProjectsLocationsTagTemplatesFieldsEnumValuesService) Rename(name string, googleclouddatacatalogv1beta1renametagtemplatefieldenumvaluerequest *GoogleCloudDatacatalogV1beta1RenameTagTemplateFieldEnumValueRequest) *ProjectsLocationsTagTemplatesFieldsEnumValuesRenameCall {
  8468  	c := &ProjectsLocationsTagTemplatesFieldsEnumValuesRenameCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8469  	c.name = name
  8470  	c.googleclouddatacatalogv1beta1renametagtemplatefieldenumvaluerequest = googleclouddatacatalogv1beta1renametagtemplatefieldenumvaluerequest
  8471  	return c
  8472  }
  8473  
  8474  // Fields allows partial responses to be retrieved. See
  8475  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8476  // details.
  8477  func (c *ProjectsLocationsTagTemplatesFieldsEnumValuesRenameCall) Fields(s ...googleapi.Field) *ProjectsLocationsTagTemplatesFieldsEnumValuesRenameCall {
  8478  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8479  	return c
  8480  }
  8481  
  8482  // Context sets the context to be used in this call's Do method.
  8483  func (c *ProjectsLocationsTagTemplatesFieldsEnumValuesRenameCall) Context(ctx context.Context) *ProjectsLocationsTagTemplatesFieldsEnumValuesRenameCall {
  8484  	c.ctx_ = ctx
  8485  	return c
  8486  }
  8487  
  8488  // Header returns a http.Header that can be modified by the caller to add
  8489  // headers to the request.
  8490  func (c *ProjectsLocationsTagTemplatesFieldsEnumValuesRenameCall) Header() http.Header {
  8491  	if c.header_ == nil {
  8492  		c.header_ = make(http.Header)
  8493  	}
  8494  	return c.header_
  8495  }
  8496  
  8497  func (c *ProjectsLocationsTagTemplatesFieldsEnumValuesRenameCall) doRequest(alt string) (*http.Response, error) {
  8498  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  8499  	var body io.Reader = nil
  8500  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddatacatalogv1beta1renametagtemplatefieldenumvaluerequest)
  8501  	if err != nil {
  8502  		return nil, err
  8503  	}
  8504  	c.urlParams_.Set("alt", alt)
  8505  	c.urlParams_.Set("prettyPrint", "false")
  8506  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}:rename")
  8507  	urls += "?" + c.urlParams_.Encode()
  8508  	req, err := http.NewRequest("POST", urls, body)
  8509  	if err != nil {
  8510  		return nil, err
  8511  	}
  8512  	req.Header = reqHeaders
  8513  	googleapi.Expand(req.URL, map[string]string{
  8514  		"name": c.name,
  8515  	})
  8516  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8517  }
  8518  
  8519  // Do executes the "datacatalog.projects.locations.tagTemplates.fields.enumValues.rename" call.
  8520  // Any non-2xx status code is an error. Response headers are in either
  8521  // *GoogleCloudDatacatalogV1beta1TagTemplateField.ServerResponse.Header or (if
  8522  // a response was returned at all) in error.(*googleapi.Error).Header. Use
  8523  // googleapi.IsNotModified to check whether the returned error was because
  8524  // http.StatusNotModified was returned.
  8525  func (c *ProjectsLocationsTagTemplatesFieldsEnumValuesRenameCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogV1beta1TagTemplateField, error) {
  8526  	gensupport.SetOptions(c.urlParams_, opts...)
  8527  	res, err := c.doRequest("json")
  8528  	if res != nil && res.StatusCode == http.StatusNotModified {
  8529  		if res.Body != nil {
  8530  			res.Body.Close()
  8531  		}
  8532  		return nil, gensupport.WrapError(&googleapi.Error{
  8533  			Code:   res.StatusCode,
  8534  			Header: res.Header,
  8535  		})
  8536  	}
  8537  	if err != nil {
  8538  		return nil, err
  8539  	}
  8540  	defer googleapi.CloseBody(res)
  8541  	if err := googleapi.CheckResponse(res); err != nil {
  8542  		return nil, gensupport.WrapError(err)
  8543  	}
  8544  	ret := &GoogleCloudDatacatalogV1beta1TagTemplateField{
  8545  		ServerResponse: googleapi.ServerResponse{
  8546  			Header:         res.Header,
  8547  			HTTPStatusCode: res.StatusCode,
  8548  		},
  8549  	}
  8550  	target := &ret
  8551  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8552  		return nil, err
  8553  	}
  8554  	return ret, nil
  8555  }
  8556  
  8557  type ProjectsLocationsTaxonomiesCreateCall struct {
  8558  	s                                     *Service
  8559  	parent                                string
  8560  	googleclouddatacatalogv1beta1taxonomy *GoogleCloudDatacatalogV1beta1Taxonomy
  8561  	urlParams_                            gensupport.URLParams
  8562  	ctx_                                  context.Context
  8563  	header_                               http.Header
  8564  }
  8565  
  8566  // Create: Creates a taxonomy in the specified project.
  8567  //
  8568  // - parent: Resource name of the project that the taxonomy will belong to.
  8569  func (r *ProjectsLocationsTaxonomiesService) Create(parent string, googleclouddatacatalogv1beta1taxonomy *GoogleCloudDatacatalogV1beta1Taxonomy) *ProjectsLocationsTaxonomiesCreateCall {
  8570  	c := &ProjectsLocationsTaxonomiesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8571  	c.parent = parent
  8572  	c.googleclouddatacatalogv1beta1taxonomy = googleclouddatacatalogv1beta1taxonomy
  8573  	return c
  8574  }
  8575  
  8576  // Fields allows partial responses to be retrieved. See
  8577  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8578  // details.
  8579  func (c *ProjectsLocationsTaxonomiesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsTaxonomiesCreateCall {
  8580  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8581  	return c
  8582  }
  8583  
  8584  // Context sets the context to be used in this call's Do method.
  8585  func (c *ProjectsLocationsTaxonomiesCreateCall) Context(ctx context.Context) *ProjectsLocationsTaxonomiesCreateCall {
  8586  	c.ctx_ = ctx
  8587  	return c
  8588  }
  8589  
  8590  // Header returns a http.Header that can be modified by the caller to add
  8591  // headers to the request.
  8592  func (c *ProjectsLocationsTaxonomiesCreateCall) Header() http.Header {
  8593  	if c.header_ == nil {
  8594  		c.header_ = make(http.Header)
  8595  	}
  8596  	return c.header_
  8597  }
  8598  
  8599  func (c *ProjectsLocationsTaxonomiesCreateCall) doRequest(alt string) (*http.Response, error) {
  8600  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  8601  	var body io.Reader = nil
  8602  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddatacatalogv1beta1taxonomy)
  8603  	if err != nil {
  8604  		return nil, err
  8605  	}
  8606  	c.urlParams_.Set("alt", alt)
  8607  	c.urlParams_.Set("prettyPrint", "false")
  8608  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/taxonomies")
  8609  	urls += "?" + c.urlParams_.Encode()
  8610  	req, err := http.NewRequest("POST", urls, body)
  8611  	if err != nil {
  8612  		return nil, err
  8613  	}
  8614  	req.Header = reqHeaders
  8615  	googleapi.Expand(req.URL, map[string]string{
  8616  		"parent": c.parent,
  8617  	})
  8618  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8619  }
  8620  
  8621  // Do executes the "datacatalog.projects.locations.taxonomies.create" call.
  8622  // Any non-2xx status code is an error. Response headers are in either
  8623  // *GoogleCloudDatacatalogV1beta1Taxonomy.ServerResponse.Header or (if a
  8624  // response was returned at all) in error.(*googleapi.Error).Header. Use
  8625  // googleapi.IsNotModified to check whether the returned error was because
  8626  // http.StatusNotModified was returned.
  8627  func (c *ProjectsLocationsTaxonomiesCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogV1beta1Taxonomy, error) {
  8628  	gensupport.SetOptions(c.urlParams_, opts...)
  8629  	res, err := c.doRequest("json")
  8630  	if res != nil && res.StatusCode == http.StatusNotModified {
  8631  		if res.Body != nil {
  8632  			res.Body.Close()
  8633  		}
  8634  		return nil, gensupport.WrapError(&googleapi.Error{
  8635  			Code:   res.StatusCode,
  8636  			Header: res.Header,
  8637  		})
  8638  	}
  8639  	if err != nil {
  8640  		return nil, err
  8641  	}
  8642  	defer googleapi.CloseBody(res)
  8643  	if err := googleapi.CheckResponse(res); err != nil {
  8644  		return nil, gensupport.WrapError(err)
  8645  	}
  8646  	ret := &GoogleCloudDatacatalogV1beta1Taxonomy{
  8647  		ServerResponse: googleapi.ServerResponse{
  8648  			Header:         res.Header,
  8649  			HTTPStatusCode: res.StatusCode,
  8650  		},
  8651  	}
  8652  	target := &ret
  8653  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8654  		return nil, err
  8655  	}
  8656  	return ret, nil
  8657  }
  8658  
  8659  type ProjectsLocationsTaxonomiesDeleteCall struct {
  8660  	s          *Service
  8661  	name       string
  8662  	urlParams_ gensupport.URLParams
  8663  	ctx_       context.Context
  8664  	header_    http.Header
  8665  }
  8666  
  8667  // Delete: Deletes a taxonomy. This operation will also delete all policy tags
  8668  // in this taxonomy along with their associated policies.
  8669  //
  8670  //   - name: Resource name of the taxonomy to be deleted. All policy tags in this
  8671  //     taxonomy will also be deleted.
  8672  func (r *ProjectsLocationsTaxonomiesService) Delete(name string) *ProjectsLocationsTaxonomiesDeleteCall {
  8673  	c := &ProjectsLocationsTaxonomiesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8674  	c.name = name
  8675  	return c
  8676  }
  8677  
  8678  // Fields allows partial responses to be retrieved. See
  8679  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8680  // details.
  8681  func (c *ProjectsLocationsTaxonomiesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsTaxonomiesDeleteCall {
  8682  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8683  	return c
  8684  }
  8685  
  8686  // Context sets the context to be used in this call's Do method.
  8687  func (c *ProjectsLocationsTaxonomiesDeleteCall) Context(ctx context.Context) *ProjectsLocationsTaxonomiesDeleteCall {
  8688  	c.ctx_ = ctx
  8689  	return c
  8690  }
  8691  
  8692  // Header returns a http.Header that can be modified by the caller to add
  8693  // headers to the request.
  8694  func (c *ProjectsLocationsTaxonomiesDeleteCall) Header() http.Header {
  8695  	if c.header_ == nil {
  8696  		c.header_ = make(http.Header)
  8697  	}
  8698  	return c.header_
  8699  }
  8700  
  8701  func (c *ProjectsLocationsTaxonomiesDeleteCall) doRequest(alt string) (*http.Response, error) {
  8702  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  8703  	var body io.Reader = nil
  8704  	c.urlParams_.Set("alt", alt)
  8705  	c.urlParams_.Set("prettyPrint", "false")
  8706  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
  8707  	urls += "?" + c.urlParams_.Encode()
  8708  	req, err := http.NewRequest("DELETE", urls, body)
  8709  	if err != nil {
  8710  		return nil, err
  8711  	}
  8712  	req.Header = reqHeaders
  8713  	googleapi.Expand(req.URL, map[string]string{
  8714  		"name": c.name,
  8715  	})
  8716  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8717  }
  8718  
  8719  // Do executes the "datacatalog.projects.locations.taxonomies.delete" call.
  8720  // Any non-2xx status code is an error. Response headers are in either
  8721  // *Empty.ServerResponse.Header or (if a response was returned at all) in
  8722  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  8723  // whether the returned error was because http.StatusNotModified was returned.
  8724  func (c *ProjectsLocationsTaxonomiesDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
  8725  	gensupport.SetOptions(c.urlParams_, opts...)
  8726  	res, err := c.doRequest("json")
  8727  	if res != nil && res.StatusCode == http.StatusNotModified {
  8728  		if res.Body != nil {
  8729  			res.Body.Close()
  8730  		}
  8731  		return nil, gensupport.WrapError(&googleapi.Error{
  8732  			Code:   res.StatusCode,
  8733  			Header: res.Header,
  8734  		})
  8735  	}
  8736  	if err != nil {
  8737  		return nil, err
  8738  	}
  8739  	defer googleapi.CloseBody(res)
  8740  	if err := googleapi.CheckResponse(res); err != nil {
  8741  		return nil, gensupport.WrapError(err)
  8742  	}
  8743  	ret := &Empty{
  8744  		ServerResponse: googleapi.ServerResponse{
  8745  			Header:         res.Header,
  8746  			HTTPStatusCode: res.StatusCode,
  8747  		},
  8748  	}
  8749  	target := &ret
  8750  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8751  		return nil, err
  8752  	}
  8753  	return ret, nil
  8754  }
  8755  
  8756  type ProjectsLocationsTaxonomiesExportCall struct {
  8757  	s            *Service
  8758  	parent       string
  8759  	urlParams_   gensupport.URLParams
  8760  	ifNoneMatch_ string
  8761  	ctx_         context.Context
  8762  	header_      http.Header
  8763  }
  8764  
  8765  // Export: Exports all taxonomies and their policy tags in a project. This
  8766  // method generates SerializedTaxonomy protos with nested policy tags that can
  8767  // be used as an input for future ImportTaxonomies calls.
  8768  //
  8769  //   - parent: Resource name of the project that taxonomies to be exported will
  8770  //     share.
  8771  func (r *ProjectsLocationsTaxonomiesService) Export(parent string) *ProjectsLocationsTaxonomiesExportCall {
  8772  	c := &ProjectsLocationsTaxonomiesExportCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8773  	c.parent = parent
  8774  	return c
  8775  }
  8776  
  8777  // SerializedTaxonomies sets the optional parameter "serializedTaxonomies":
  8778  // Export taxonomies as serialized taxonomies.
  8779  func (c *ProjectsLocationsTaxonomiesExportCall) SerializedTaxonomies(serializedTaxonomies bool) *ProjectsLocationsTaxonomiesExportCall {
  8780  	c.urlParams_.Set("serializedTaxonomies", fmt.Sprint(serializedTaxonomies))
  8781  	return c
  8782  }
  8783  
  8784  // Taxonomies sets the optional parameter "taxonomies": Required. Resource
  8785  // names of the taxonomies to be exported.
  8786  func (c *ProjectsLocationsTaxonomiesExportCall) Taxonomies(taxonomies ...string) *ProjectsLocationsTaxonomiesExportCall {
  8787  	c.urlParams_.SetMulti("taxonomies", append([]string{}, taxonomies...))
  8788  	return c
  8789  }
  8790  
  8791  // Fields allows partial responses to be retrieved. See
  8792  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8793  // details.
  8794  func (c *ProjectsLocationsTaxonomiesExportCall) Fields(s ...googleapi.Field) *ProjectsLocationsTaxonomiesExportCall {
  8795  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8796  	return c
  8797  }
  8798  
  8799  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  8800  // object's ETag matches the given value. This is useful for getting updates
  8801  // only after the object has changed since the last request.
  8802  func (c *ProjectsLocationsTaxonomiesExportCall) IfNoneMatch(entityTag string) *ProjectsLocationsTaxonomiesExportCall {
  8803  	c.ifNoneMatch_ = entityTag
  8804  	return c
  8805  }
  8806  
  8807  // Context sets the context to be used in this call's Do method.
  8808  func (c *ProjectsLocationsTaxonomiesExportCall) Context(ctx context.Context) *ProjectsLocationsTaxonomiesExportCall {
  8809  	c.ctx_ = ctx
  8810  	return c
  8811  }
  8812  
  8813  // Header returns a http.Header that can be modified by the caller to add
  8814  // headers to the request.
  8815  func (c *ProjectsLocationsTaxonomiesExportCall) Header() http.Header {
  8816  	if c.header_ == nil {
  8817  		c.header_ = make(http.Header)
  8818  	}
  8819  	return c.header_
  8820  }
  8821  
  8822  func (c *ProjectsLocationsTaxonomiesExportCall) doRequest(alt string) (*http.Response, error) {
  8823  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  8824  	if c.ifNoneMatch_ != "" {
  8825  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  8826  	}
  8827  	var body io.Reader = nil
  8828  	c.urlParams_.Set("alt", alt)
  8829  	c.urlParams_.Set("prettyPrint", "false")
  8830  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/taxonomies:export")
  8831  	urls += "?" + c.urlParams_.Encode()
  8832  	req, err := http.NewRequest("GET", urls, body)
  8833  	if err != nil {
  8834  		return nil, err
  8835  	}
  8836  	req.Header = reqHeaders
  8837  	googleapi.Expand(req.URL, map[string]string{
  8838  		"parent": c.parent,
  8839  	})
  8840  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8841  }
  8842  
  8843  // Do executes the "datacatalog.projects.locations.taxonomies.export" call.
  8844  // Any non-2xx status code is an error. Response headers are in either
  8845  // *GoogleCloudDatacatalogV1beta1ExportTaxonomiesResponse.ServerResponse.Header
  8846  // or (if a response was returned at all) in error.(*googleapi.Error).Header.
  8847  // Use googleapi.IsNotModified to check whether the returned error was because
  8848  // http.StatusNotModified was returned.
  8849  func (c *ProjectsLocationsTaxonomiesExportCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogV1beta1ExportTaxonomiesResponse, error) {
  8850  	gensupport.SetOptions(c.urlParams_, opts...)
  8851  	res, err := c.doRequest("json")
  8852  	if res != nil && res.StatusCode == http.StatusNotModified {
  8853  		if res.Body != nil {
  8854  			res.Body.Close()
  8855  		}
  8856  		return nil, gensupport.WrapError(&googleapi.Error{
  8857  			Code:   res.StatusCode,
  8858  			Header: res.Header,
  8859  		})
  8860  	}
  8861  	if err != nil {
  8862  		return nil, err
  8863  	}
  8864  	defer googleapi.CloseBody(res)
  8865  	if err := googleapi.CheckResponse(res); err != nil {
  8866  		return nil, gensupport.WrapError(err)
  8867  	}
  8868  	ret := &GoogleCloudDatacatalogV1beta1ExportTaxonomiesResponse{
  8869  		ServerResponse: googleapi.ServerResponse{
  8870  			Header:         res.Header,
  8871  			HTTPStatusCode: res.StatusCode,
  8872  		},
  8873  	}
  8874  	target := &ret
  8875  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8876  		return nil, err
  8877  	}
  8878  	return ret, nil
  8879  }
  8880  
  8881  type ProjectsLocationsTaxonomiesGetCall struct {
  8882  	s            *Service
  8883  	name         string
  8884  	urlParams_   gensupport.URLParams
  8885  	ifNoneMatch_ string
  8886  	ctx_         context.Context
  8887  	header_      http.Header
  8888  }
  8889  
  8890  // Get: Gets a taxonomy.
  8891  //
  8892  // - name: Resource name of the requested taxonomy.
  8893  func (r *ProjectsLocationsTaxonomiesService) Get(name string) *ProjectsLocationsTaxonomiesGetCall {
  8894  	c := &ProjectsLocationsTaxonomiesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8895  	c.name = name
  8896  	return c
  8897  }
  8898  
  8899  // Fields allows partial responses to be retrieved. See
  8900  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8901  // details.
  8902  func (c *ProjectsLocationsTaxonomiesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsTaxonomiesGetCall {
  8903  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8904  	return c
  8905  }
  8906  
  8907  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  8908  // object's ETag matches the given value. This is useful for getting updates
  8909  // only after the object has changed since the last request.
  8910  func (c *ProjectsLocationsTaxonomiesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsTaxonomiesGetCall {
  8911  	c.ifNoneMatch_ = entityTag
  8912  	return c
  8913  }
  8914  
  8915  // Context sets the context to be used in this call's Do method.
  8916  func (c *ProjectsLocationsTaxonomiesGetCall) Context(ctx context.Context) *ProjectsLocationsTaxonomiesGetCall {
  8917  	c.ctx_ = ctx
  8918  	return c
  8919  }
  8920  
  8921  // Header returns a http.Header that can be modified by the caller to add
  8922  // headers to the request.
  8923  func (c *ProjectsLocationsTaxonomiesGetCall) Header() http.Header {
  8924  	if c.header_ == nil {
  8925  		c.header_ = make(http.Header)
  8926  	}
  8927  	return c.header_
  8928  }
  8929  
  8930  func (c *ProjectsLocationsTaxonomiesGetCall) doRequest(alt string) (*http.Response, error) {
  8931  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  8932  	if c.ifNoneMatch_ != "" {
  8933  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  8934  	}
  8935  	var body io.Reader = nil
  8936  	c.urlParams_.Set("alt", alt)
  8937  	c.urlParams_.Set("prettyPrint", "false")
  8938  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
  8939  	urls += "?" + c.urlParams_.Encode()
  8940  	req, err := http.NewRequest("GET", urls, body)
  8941  	if err != nil {
  8942  		return nil, err
  8943  	}
  8944  	req.Header = reqHeaders
  8945  	googleapi.Expand(req.URL, map[string]string{
  8946  		"name": c.name,
  8947  	})
  8948  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8949  }
  8950  
  8951  // Do executes the "datacatalog.projects.locations.taxonomies.get" call.
  8952  // Any non-2xx status code is an error. Response headers are in either
  8953  // *GoogleCloudDatacatalogV1beta1Taxonomy.ServerResponse.Header or (if a
  8954  // response was returned at all) in error.(*googleapi.Error).Header. Use
  8955  // googleapi.IsNotModified to check whether the returned error was because
  8956  // http.StatusNotModified was returned.
  8957  func (c *ProjectsLocationsTaxonomiesGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogV1beta1Taxonomy, error) {
  8958  	gensupport.SetOptions(c.urlParams_, opts...)
  8959  	res, err := c.doRequest("json")
  8960  	if res != nil && res.StatusCode == http.StatusNotModified {
  8961  		if res.Body != nil {
  8962  			res.Body.Close()
  8963  		}
  8964  		return nil, gensupport.WrapError(&googleapi.Error{
  8965  			Code:   res.StatusCode,
  8966  			Header: res.Header,
  8967  		})
  8968  	}
  8969  	if err != nil {
  8970  		return nil, err
  8971  	}
  8972  	defer googleapi.CloseBody(res)
  8973  	if err := googleapi.CheckResponse(res); err != nil {
  8974  		return nil, gensupport.WrapError(err)
  8975  	}
  8976  	ret := &GoogleCloudDatacatalogV1beta1Taxonomy{
  8977  		ServerResponse: googleapi.ServerResponse{
  8978  			Header:         res.Header,
  8979  			HTTPStatusCode: res.StatusCode,
  8980  		},
  8981  	}
  8982  	target := &ret
  8983  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8984  		return nil, err
  8985  	}
  8986  	return ret, nil
  8987  }
  8988  
  8989  type ProjectsLocationsTaxonomiesGetIamPolicyCall struct {
  8990  	s                   *Service
  8991  	resource            string
  8992  	getiampolicyrequest *GetIamPolicyRequest
  8993  	urlParams_          gensupport.URLParams
  8994  	ctx_                context.Context
  8995  	header_             http.Header
  8996  }
  8997  
  8998  // GetIamPolicy: Gets the IAM policy for a taxonomy or a policy tag.
  8999  //
  9000  //   - resource: REQUIRED: The resource for which the policy is being requested.
  9001  //     See Resource names (https://cloud.google.com/apis/design/resource_names)
  9002  //     for the appropriate value for this field.
  9003  func (r *ProjectsLocationsTaxonomiesService) GetIamPolicy(resource string, getiampolicyrequest *GetIamPolicyRequest) *ProjectsLocationsTaxonomiesGetIamPolicyCall {
  9004  	c := &ProjectsLocationsTaxonomiesGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9005  	c.resource = resource
  9006  	c.getiampolicyrequest = getiampolicyrequest
  9007  	return c
  9008  }
  9009  
  9010  // Fields allows partial responses to be retrieved. See
  9011  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9012  // details.
  9013  func (c *ProjectsLocationsTaxonomiesGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsTaxonomiesGetIamPolicyCall {
  9014  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9015  	return c
  9016  }
  9017  
  9018  // Context sets the context to be used in this call's Do method.
  9019  func (c *ProjectsLocationsTaxonomiesGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsTaxonomiesGetIamPolicyCall {
  9020  	c.ctx_ = ctx
  9021  	return c
  9022  }
  9023  
  9024  // Header returns a http.Header that can be modified by the caller to add
  9025  // headers to the request.
  9026  func (c *ProjectsLocationsTaxonomiesGetIamPolicyCall) Header() http.Header {
  9027  	if c.header_ == nil {
  9028  		c.header_ = make(http.Header)
  9029  	}
  9030  	return c.header_
  9031  }
  9032  
  9033  func (c *ProjectsLocationsTaxonomiesGetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
  9034  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  9035  	var body io.Reader = nil
  9036  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.getiampolicyrequest)
  9037  	if err != nil {
  9038  		return nil, err
  9039  	}
  9040  	c.urlParams_.Set("alt", alt)
  9041  	c.urlParams_.Set("prettyPrint", "false")
  9042  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:getIamPolicy")
  9043  	urls += "?" + c.urlParams_.Encode()
  9044  	req, err := http.NewRequest("POST", urls, body)
  9045  	if err != nil {
  9046  		return nil, err
  9047  	}
  9048  	req.Header = reqHeaders
  9049  	googleapi.Expand(req.URL, map[string]string{
  9050  		"resource": c.resource,
  9051  	})
  9052  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9053  }
  9054  
  9055  // Do executes the "datacatalog.projects.locations.taxonomies.getIamPolicy" call.
  9056  // Any non-2xx status code is an error. Response headers are in either
  9057  // *Policy.ServerResponse.Header or (if a response was returned at all) in
  9058  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  9059  // whether the returned error was because http.StatusNotModified was returned.
  9060  func (c *ProjectsLocationsTaxonomiesGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
  9061  	gensupport.SetOptions(c.urlParams_, opts...)
  9062  	res, err := c.doRequest("json")
  9063  	if res != nil && res.StatusCode == http.StatusNotModified {
  9064  		if res.Body != nil {
  9065  			res.Body.Close()
  9066  		}
  9067  		return nil, gensupport.WrapError(&googleapi.Error{
  9068  			Code:   res.StatusCode,
  9069  			Header: res.Header,
  9070  		})
  9071  	}
  9072  	if err != nil {
  9073  		return nil, err
  9074  	}
  9075  	defer googleapi.CloseBody(res)
  9076  	if err := googleapi.CheckResponse(res); err != nil {
  9077  		return nil, gensupport.WrapError(err)
  9078  	}
  9079  	ret := &Policy{
  9080  		ServerResponse: googleapi.ServerResponse{
  9081  			Header:         res.Header,
  9082  			HTTPStatusCode: res.StatusCode,
  9083  		},
  9084  	}
  9085  	target := &ret
  9086  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9087  		return nil, err
  9088  	}
  9089  	return ret, nil
  9090  }
  9091  
  9092  type ProjectsLocationsTaxonomiesImportCall struct {
  9093  	s                                                    *Service
  9094  	parent                                               string
  9095  	googleclouddatacatalogv1beta1importtaxonomiesrequest *GoogleCloudDatacatalogV1beta1ImportTaxonomiesRequest
  9096  	urlParams_                                           gensupport.URLParams
  9097  	ctx_                                                 context.Context
  9098  	header_                                              http.Header
  9099  }
  9100  
  9101  // Import: Imports all taxonomies and their policy tags to a project as new
  9102  // taxonomies. This method provides a bulk taxonomy / policy tag creation using
  9103  // nested proto structure.
  9104  //
  9105  //   - parent: Resource name of project that the imported taxonomies will belong
  9106  //     to.
  9107  func (r *ProjectsLocationsTaxonomiesService) Import(parent string, googleclouddatacatalogv1beta1importtaxonomiesrequest *GoogleCloudDatacatalogV1beta1ImportTaxonomiesRequest) *ProjectsLocationsTaxonomiesImportCall {
  9108  	c := &ProjectsLocationsTaxonomiesImportCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9109  	c.parent = parent
  9110  	c.googleclouddatacatalogv1beta1importtaxonomiesrequest = googleclouddatacatalogv1beta1importtaxonomiesrequest
  9111  	return c
  9112  }
  9113  
  9114  // Fields allows partial responses to be retrieved. See
  9115  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9116  // details.
  9117  func (c *ProjectsLocationsTaxonomiesImportCall) Fields(s ...googleapi.Field) *ProjectsLocationsTaxonomiesImportCall {
  9118  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9119  	return c
  9120  }
  9121  
  9122  // Context sets the context to be used in this call's Do method.
  9123  func (c *ProjectsLocationsTaxonomiesImportCall) Context(ctx context.Context) *ProjectsLocationsTaxonomiesImportCall {
  9124  	c.ctx_ = ctx
  9125  	return c
  9126  }
  9127  
  9128  // Header returns a http.Header that can be modified by the caller to add
  9129  // headers to the request.
  9130  func (c *ProjectsLocationsTaxonomiesImportCall) Header() http.Header {
  9131  	if c.header_ == nil {
  9132  		c.header_ = make(http.Header)
  9133  	}
  9134  	return c.header_
  9135  }
  9136  
  9137  func (c *ProjectsLocationsTaxonomiesImportCall) doRequest(alt string) (*http.Response, error) {
  9138  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  9139  	var body io.Reader = nil
  9140  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddatacatalogv1beta1importtaxonomiesrequest)
  9141  	if err != nil {
  9142  		return nil, err
  9143  	}
  9144  	c.urlParams_.Set("alt", alt)
  9145  	c.urlParams_.Set("prettyPrint", "false")
  9146  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/taxonomies:import")
  9147  	urls += "?" + c.urlParams_.Encode()
  9148  	req, err := http.NewRequest("POST", urls, body)
  9149  	if err != nil {
  9150  		return nil, err
  9151  	}
  9152  	req.Header = reqHeaders
  9153  	googleapi.Expand(req.URL, map[string]string{
  9154  		"parent": c.parent,
  9155  	})
  9156  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9157  }
  9158  
  9159  // Do executes the "datacatalog.projects.locations.taxonomies.import" call.
  9160  // Any non-2xx status code is an error. Response headers are in either
  9161  // *GoogleCloudDatacatalogV1beta1ImportTaxonomiesResponse.ServerResponse.Header
  9162  // or (if a response was returned at all) in error.(*googleapi.Error).Header.
  9163  // Use googleapi.IsNotModified to check whether the returned error was because
  9164  // http.StatusNotModified was returned.
  9165  func (c *ProjectsLocationsTaxonomiesImportCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogV1beta1ImportTaxonomiesResponse, error) {
  9166  	gensupport.SetOptions(c.urlParams_, opts...)
  9167  	res, err := c.doRequest("json")
  9168  	if res != nil && res.StatusCode == http.StatusNotModified {
  9169  		if res.Body != nil {
  9170  			res.Body.Close()
  9171  		}
  9172  		return nil, gensupport.WrapError(&googleapi.Error{
  9173  			Code:   res.StatusCode,
  9174  			Header: res.Header,
  9175  		})
  9176  	}
  9177  	if err != nil {
  9178  		return nil, err
  9179  	}
  9180  	defer googleapi.CloseBody(res)
  9181  	if err := googleapi.CheckResponse(res); err != nil {
  9182  		return nil, gensupport.WrapError(err)
  9183  	}
  9184  	ret := &GoogleCloudDatacatalogV1beta1ImportTaxonomiesResponse{
  9185  		ServerResponse: googleapi.ServerResponse{
  9186  			Header:         res.Header,
  9187  			HTTPStatusCode: res.StatusCode,
  9188  		},
  9189  	}
  9190  	target := &ret
  9191  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9192  		return nil, err
  9193  	}
  9194  	return ret, nil
  9195  }
  9196  
  9197  type ProjectsLocationsTaxonomiesListCall struct {
  9198  	s            *Service
  9199  	parent       string
  9200  	urlParams_   gensupport.URLParams
  9201  	ifNoneMatch_ string
  9202  	ctx_         context.Context
  9203  	header_      http.Header
  9204  }
  9205  
  9206  // List: Lists all taxonomies in a project in a particular location that the
  9207  // caller has permission to view.
  9208  //
  9209  // - parent: Resource name of the project to list the taxonomies of.
  9210  func (r *ProjectsLocationsTaxonomiesService) List(parent string) *ProjectsLocationsTaxonomiesListCall {
  9211  	c := &ProjectsLocationsTaxonomiesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9212  	c.parent = parent
  9213  	return c
  9214  }
  9215  
  9216  // Filter sets the optional parameter "filter": Supported field for filter is
  9217  // 'service' and value is 'dataplex'. Eg: service=dataplex.
  9218  func (c *ProjectsLocationsTaxonomiesListCall) Filter(filter string) *ProjectsLocationsTaxonomiesListCall {
  9219  	c.urlParams_.Set("filter", filter)
  9220  	return c
  9221  }
  9222  
  9223  // PageSize sets the optional parameter "pageSize": The maximum number of items
  9224  // to return. Must be a value between 1 and 1000. If not set, defaults to 50.
  9225  func (c *ProjectsLocationsTaxonomiesListCall) PageSize(pageSize int64) *ProjectsLocationsTaxonomiesListCall {
  9226  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  9227  	return c
  9228  }
  9229  
  9230  // PageToken sets the optional parameter "pageToken": The next_page_token value
  9231  // returned from a previous list request, if any. If not set, defaults to an
  9232  // empty string.
  9233  func (c *ProjectsLocationsTaxonomiesListCall) PageToken(pageToken string) *ProjectsLocationsTaxonomiesListCall {
  9234  	c.urlParams_.Set("pageToken", pageToken)
  9235  	return c
  9236  }
  9237  
  9238  // Fields allows partial responses to be retrieved. See
  9239  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9240  // details.
  9241  func (c *ProjectsLocationsTaxonomiesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsTaxonomiesListCall {
  9242  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9243  	return c
  9244  }
  9245  
  9246  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  9247  // object's ETag matches the given value. This is useful for getting updates
  9248  // only after the object has changed since the last request.
  9249  func (c *ProjectsLocationsTaxonomiesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsTaxonomiesListCall {
  9250  	c.ifNoneMatch_ = entityTag
  9251  	return c
  9252  }
  9253  
  9254  // Context sets the context to be used in this call's Do method.
  9255  func (c *ProjectsLocationsTaxonomiesListCall) Context(ctx context.Context) *ProjectsLocationsTaxonomiesListCall {
  9256  	c.ctx_ = ctx
  9257  	return c
  9258  }
  9259  
  9260  // Header returns a http.Header that can be modified by the caller to add
  9261  // headers to the request.
  9262  func (c *ProjectsLocationsTaxonomiesListCall) Header() http.Header {
  9263  	if c.header_ == nil {
  9264  		c.header_ = make(http.Header)
  9265  	}
  9266  	return c.header_
  9267  }
  9268  
  9269  func (c *ProjectsLocationsTaxonomiesListCall) doRequest(alt string) (*http.Response, error) {
  9270  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  9271  	if c.ifNoneMatch_ != "" {
  9272  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  9273  	}
  9274  	var body io.Reader = nil
  9275  	c.urlParams_.Set("alt", alt)
  9276  	c.urlParams_.Set("prettyPrint", "false")
  9277  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/taxonomies")
  9278  	urls += "?" + c.urlParams_.Encode()
  9279  	req, err := http.NewRequest("GET", urls, body)
  9280  	if err != nil {
  9281  		return nil, err
  9282  	}
  9283  	req.Header = reqHeaders
  9284  	googleapi.Expand(req.URL, map[string]string{
  9285  		"parent": c.parent,
  9286  	})
  9287  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9288  }
  9289  
  9290  // Do executes the "datacatalog.projects.locations.taxonomies.list" call.
  9291  // Any non-2xx status code is an error. Response headers are in either
  9292  // *GoogleCloudDatacatalogV1beta1ListTaxonomiesResponse.ServerResponse.Header
  9293  // or (if a response was returned at all) in error.(*googleapi.Error).Header.
  9294  // Use googleapi.IsNotModified to check whether the returned error was because
  9295  // http.StatusNotModified was returned.
  9296  func (c *ProjectsLocationsTaxonomiesListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogV1beta1ListTaxonomiesResponse, error) {
  9297  	gensupport.SetOptions(c.urlParams_, opts...)
  9298  	res, err := c.doRequest("json")
  9299  	if res != nil && res.StatusCode == http.StatusNotModified {
  9300  		if res.Body != nil {
  9301  			res.Body.Close()
  9302  		}
  9303  		return nil, gensupport.WrapError(&googleapi.Error{
  9304  			Code:   res.StatusCode,
  9305  			Header: res.Header,
  9306  		})
  9307  	}
  9308  	if err != nil {
  9309  		return nil, err
  9310  	}
  9311  	defer googleapi.CloseBody(res)
  9312  	if err := googleapi.CheckResponse(res); err != nil {
  9313  		return nil, gensupport.WrapError(err)
  9314  	}
  9315  	ret := &GoogleCloudDatacatalogV1beta1ListTaxonomiesResponse{
  9316  		ServerResponse: googleapi.ServerResponse{
  9317  			Header:         res.Header,
  9318  			HTTPStatusCode: res.StatusCode,
  9319  		},
  9320  	}
  9321  	target := &ret
  9322  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9323  		return nil, err
  9324  	}
  9325  	return ret, nil
  9326  }
  9327  
  9328  // Pages invokes f for each page of results.
  9329  // A non-nil error returned from f will halt the iteration.
  9330  // The provided context supersedes any context provided to the Context method.
  9331  func (c *ProjectsLocationsTaxonomiesListCall) Pages(ctx context.Context, f func(*GoogleCloudDatacatalogV1beta1ListTaxonomiesResponse) error) error {
  9332  	c.ctx_ = ctx
  9333  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  9334  	for {
  9335  		x, err := c.Do()
  9336  		if err != nil {
  9337  			return err
  9338  		}
  9339  		if err := f(x); err != nil {
  9340  			return err
  9341  		}
  9342  		if x.NextPageToken == "" {
  9343  			return nil
  9344  		}
  9345  		c.PageToken(x.NextPageToken)
  9346  	}
  9347  }
  9348  
  9349  type ProjectsLocationsTaxonomiesPatchCall struct {
  9350  	s                                     *Service
  9351  	name                                  string
  9352  	googleclouddatacatalogv1beta1taxonomy *GoogleCloudDatacatalogV1beta1Taxonomy
  9353  	urlParams_                            gensupport.URLParams
  9354  	ctx_                                  context.Context
  9355  	header_                               http.Header
  9356  }
  9357  
  9358  // Patch: Updates a taxonomy.
  9359  //
  9360  //   - name: Identifier. Resource name of this taxonomy, whose format is:
  9361  //     "projects/{project_number}/locations/{location_id}/taxonomies/{id}".
  9362  func (r *ProjectsLocationsTaxonomiesService) Patch(name string, googleclouddatacatalogv1beta1taxonomy *GoogleCloudDatacatalogV1beta1Taxonomy) *ProjectsLocationsTaxonomiesPatchCall {
  9363  	c := &ProjectsLocationsTaxonomiesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9364  	c.name = name
  9365  	c.googleclouddatacatalogv1beta1taxonomy = googleclouddatacatalogv1beta1taxonomy
  9366  	return c
  9367  }
  9368  
  9369  // UpdateMask sets the optional parameter "updateMask": The update mask applies
  9370  // to the resource. For the `FieldMask` definition, see
  9371  // https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask
  9372  // If not set, defaults to all of the fields that are allowed to update.
  9373  func (c *ProjectsLocationsTaxonomiesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsTaxonomiesPatchCall {
  9374  	c.urlParams_.Set("updateMask", updateMask)
  9375  	return c
  9376  }
  9377  
  9378  // Fields allows partial responses to be retrieved. See
  9379  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9380  // details.
  9381  func (c *ProjectsLocationsTaxonomiesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsTaxonomiesPatchCall {
  9382  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9383  	return c
  9384  }
  9385  
  9386  // Context sets the context to be used in this call's Do method.
  9387  func (c *ProjectsLocationsTaxonomiesPatchCall) Context(ctx context.Context) *ProjectsLocationsTaxonomiesPatchCall {
  9388  	c.ctx_ = ctx
  9389  	return c
  9390  }
  9391  
  9392  // Header returns a http.Header that can be modified by the caller to add
  9393  // headers to the request.
  9394  func (c *ProjectsLocationsTaxonomiesPatchCall) Header() http.Header {
  9395  	if c.header_ == nil {
  9396  		c.header_ = make(http.Header)
  9397  	}
  9398  	return c.header_
  9399  }
  9400  
  9401  func (c *ProjectsLocationsTaxonomiesPatchCall) doRequest(alt string) (*http.Response, error) {
  9402  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  9403  	var body io.Reader = nil
  9404  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddatacatalogv1beta1taxonomy)
  9405  	if err != nil {
  9406  		return nil, err
  9407  	}
  9408  	c.urlParams_.Set("alt", alt)
  9409  	c.urlParams_.Set("prettyPrint", "false")
  9410  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
  9411  	urls += "?" + c.urlParams_.Encode()
  9412  	req, err := http.NewRequest("PATCH", urls, body)
  9413  	if err != nil {
  9414  		return nil, err
  9415  	}
  9416  	req.Header = reqHeaders
  9417  	googleapi.Expand(req.URL, map[string]string{
  9418  		"name": c.name,
  9419  	})
  9420  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9421  }
  9422  
  9423  // Do executes the "datacatalog.projects.locations.taxonomies.patch" call.
  9424  // Any non-2xx status code is an error. Response headers are in either
  9425  // *GoogleCloudDatacatalogV1beta1Taxonomy.ServerResponse.Header or (if a
  9426  // response was returned at all) in error.(*googleapi.Error).Header. Use
  9427  // googleapi.IsNotModified to check whether the returned error was because
  9428  // http.StatusNotModified was returned.
  9429  func (c *ProjectsLocationsTaxonomiesPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogV1beta1Taxonomy, error) {
  9430  	gensupport.SetOptions(c.urlParams_, opts...)
  9431  	res, err := c.doRequest("json")
  9432  	if res != nil && res.StatusCode == http.StatusNotModified {
  9433  		if res.Body != nil {
  9434  			res.Body.Close()
  9435  		}
  9436  		return nil, gensupport.WrapError(&googleapi.Error{
  9437  			Code:   res.StatusCode,
  9438  			Header: res.Header,
  9439  		})
  9440  	}
  9441  	if err != nil {
  9442  		return nil, err
  9443  	}
  9444  	defer googleapi.CloseBody(res)
  9445  	if err := googleapi.CheckResponse(res); err != nil {
  9446  		return nil, gensupport.WrapError(err)
  9447  	}
  9448  	ret := &GoogleCloudDatacatalogV1beta1Taxonomy{
  9449  		ServerResponse: googleapi.ServerResponse{
  9450  			Header:         res.Header,
  9451  			HTTPStatusCode: res.StatusCode,
  9452  		},
  9453  	}
  9454  	target := &ret
  9455  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9456  		return nil, err
  9457  	}
  9458  	return ret, nil
  9459  }
  9460  
  9461  type ProjectsLocationsTaxonomiesSetIamPolicyCall struct {
  9462  	s                   *Service
  9463  	resource            string
  9464  	setiampolicyrequest *SetIamPolicyRequest
  9465  	urlParams_          gensupport.URLParams
  9466  	ctx_                context.Context
  9467  	header_             http.Header
  9468  }
  9469  
  9470  // SetIamPolicy: Sets the IAM policy for a taxonomy or a policy tag.
  9471  //
  9472  //   - resource: REQUIRED: The resource for which the policy is being specified.
  9473  //     See Resource names (https://cloud.google.com/apis/design/resource_names)
  9474  //     for the appropriate value for this field.
  9475  func (r *ProjectsLocationsTaxonomiesService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsLocationsTaxonomiesSetIamPolicyCall {
  9476  	c := &ProjectsLocationsTaxonomiesSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9477  	c.resource = resource
  9478  	c.setiampolicyrequest = setiampolicyrequest
  9479  	return c
  9480  }
  9481  
  9482  // Fields allows partial responses to be retrieved. See
  9483  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9484  // details.
  9485  func (c *ProjectsLocationsTaxonomiesSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsTaxonomiesSetIamPolicyCall {
  9486  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9487  	return c
  9488  }
  9489  
  9490  // Context sets the context to be used in this call's Do method.
  9491  func (c *ProjectsLocationsTaxonomiesSetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsTaxonomiesSetIamPolicyCall {
  9492  	c.ctx_ = ctx
  9493  	return c
  9494  }
  9495  
  9496  // Header returns a http.Header that can be modified by the caller to add
  9497  // headers to the request.
  9498  func (c *ProjectsLocationsTaxonomiesSetIamPolicyCall) Header() http.Header {
  9499  	if c.header_ == nil {
  9500  		c.header_ = make(http.Header)
  9501  	}
  9502  	return c.header_
  9503  }
  9504  
  9505  func (c *ProjectsLocationsTaxonomiesSetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
  9506  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  9507  	var body io.Reader = nil
  9508  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest)
  9509  	if err != nil {
  9510  		return nil, err
  9511  	}
  9512  	c.urlParams_.Set("alt", alt)
  9513  	c.urlParams_.Set("prettyPrint", "false")
  9514  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:setIamPolicy")
  9515  	urls += "?" + c.urlParams_.Encode()
  9516  	req, err := http.NewRequest("POST", urls, body)
  9517  	if err != nil {
  9518  		return nil, err
  9519  	}
  9520  	req.Header = reqHeaders
  9521  	googleapi.Expand(req.URL, map[string]string{
  9522  		"resource": c.resource,
  9523  	})
  9524  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9525  }
  9526  
  9527  // Do executes the "datacatalog.projects.locations.taxonomies.setIamPolicy" call.
  9528  // Any non-2xx status code is an error. Response headers are in either
  9529  // *Policy.ServerResponse.Header or (if a response was returned at all) in
  9530  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  9531  // whether the returned error was because http.StatusNotModified was returned.
  9532  func (c *ProjectsLocationsTaxonomiesSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
  9533  	gensupport.SetOptions(c.urlParams_, opts...)
  9534  	res, err := c.doRequest("json")
  9535  	if res != nil && res.StatusCode == http.StatusNotModified {
  9536  		if res.Body != nil {
  9537  			res.Body.Close()
  9538  		}
  9539  		return nil, gensupport.WrapError(&googleapi.Error{
  9540  			Code:   res.StatusCode,
  9541  			Header: res.Header,
  9542  		})
  9543  	}
  9544  	if err != nil {
  9545  		return nil, err
  9546  	}
  9547  	defer googleapi.CloseBody(res)
  9548  	if err := googleapi.CheckResponse(res); err != nil {
  9549  		return nil, gensupport.WrapError(err)
  9550  	}
  9551  	ret := &Policy{
  9552  		ServerResponse: googleapi.ServerResponse{
  9553  			Header:         res.Header,
  9554  			HTTPStatusCode: res.StatusCode,
  9555  		},
  9556  	}
  9557  	target := &ret
  9558  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9559  		return nil, err
  9560  	}
  9561  	return ret, nil
  9562  }
  9563  
  9564  type ProjectsLocationsTaxonomiesTestIamPermissionsCall struct {
  9565  	s                         *Service
  9566  	resource                  string
  9567  	testiampermissionsrequest *TestIamPermissionsRequest
  9568  	urlParams_                gensupport.URLParams
  9569  	ctx_                      context.Context
  9570  	header_                   http.Header
  9571  }
  9572  
  9573  // TestIamPermissions: Returns the permissions that a caller has on the
  9574  // specified taxonomy or policy tag.
  9575  //
  9576  //   - resource: REQUIRED: The resource for which the policy detail is being
  9577  //     requested. See Resource names
  9578  //     (https://cloud.google.com/apis/design/resource_names) for the appropriate
  9579  //     value for this field.
  9580  func (r *ProjectsLocationsTaxonomiesService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsLocationsTaxonomiesTestIamPermissionsCall {
  9581  	c := &ProjectsLocationsTaxonomiesTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9582  	c.resource = resource
  9583  	c.testiampermissionsrequest = testiampermissionsrequest
  9584  	return c
  9585  }
  9586  
  9587  // Fields allows partial responses to be retrieved. See
  9588  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9589  // details.
  9590  func (c *ProjectsLocationsTaxonomiesTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsLocationsTaxonomiesTestIamPermissionsCall {
  9591  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9592  	return c
  9593  }
  9594  
  9595  // Context sets the context to be used in this call's Do method.
  9596  func (c *ProjectsLocationsTaxonomiesTestIamPermissionsCall) Context(ctx context.Context) *ProjectsLocationsTaxonomiesTestIamPermissionsCall {
  9597  	c.ctx_ = ctx
  9598  	return c
  9599  }
  9600  
  9601  // Header returns a http.Header that can be modified by the caller to add
  9602  // headers to the request.
  9603  func (c *ProjectsLocationsTaxonomiesTestIamPermissionsCall) Header() http.Header {
  9604  	if c.header_ == nil {
  9605  		c.header_ = make(http.Header)
  9606  	}
  9607  	return c.header_
  9608  }
  9609  
  9610  func (c *ProjectsLocationsTaxonomiesTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) {
  9611  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  9612  	var body io.Reader = nil
  9613  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest)
  9614  	if err != nil {
  9615  		return nil, err
  9616  	}
  9617  	c.urlParams_.Set("alt", alt)
  9618  	c.urlParams_.Set("prettyPrint", "false")
  9619  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:testIamPermissions")
  9620  	urls += "?" + c.urlParams_.Encode()
  9621  	req, err := http.NewRequest("POST", urls, body)
  9622  	if err != nil {
  9623  		return nil, err
  9624  	}
  9625  	req.Header = reqHeaders
  9626  	googleapi.Expand(req.URL, map[string]string{
  9627  		"resource": c.resource,
  9628  	})
  9629  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9630  }
  9631  
  9632  // Do executes the "datacatalog.projects.locations.taxonomies.testIamPermissions" call.
  9633  // Any non-2xx status code is an error. Response headers are in either
  9634  // *TestIamPermissionsResponse.ServerResponse.Header or (if a response was
  9635  // returned at all) in error.(*googleapi.Error).Header. Use
  9636  // googleapi.IsNotModified to check whether the returned error was because
  9637  // http.StatusNotModified was returned.
  9638  func (c *ProjectsLocationsTaxonomiesTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) {
  9639  	gensupport.SetOptions(c.urlParams_, opts...)
  9640  	res, err := c.doRequest("json")
  9641  	if res != nil && res.StatusCode == http.StatusNotModified {
  9642  		if res.Body != nil {
  9643  			res.Body.Close()
  9644  		}
  9645  		return nil, gensupport.WrapError(&googleapi.Error{
  9646  			Code:   res.StatusCode,
  9647  			Header: res.Header,
  9648  		})
  9649  	}
  9650  	if err != nil {
  9651  		return nil, err
  9652  	}
  9653  	defer googleapi.CloseBody(res)
  9654  	if err := googleapi.CheckResponse(res); err != nil {
  9655  		return nil, gensupport.WrapError(err)
  9656  	}
  9657  	ret := &TestIamPermissionsResponse{
  9658  		ServerResponse: googleapi.ServerResponse{
  9659  			Header:         res.Header,
  9660  			HTTPStatusCode: res.StatusCode,
  9661  		},
  9662  	}
  9663  	target := &ret
  9664  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9665  		return nil, err
  9666  	}
  9667  	return ret, nil
  9668  }
  9669  
  9670  type ProjectsLocationsTaxonomiesPolicyTagsCreateCall struct {
  9671  	s                                      *Service
  9672  	parent                                 string
  9673  	googleclouddatacatalogv1beta1policytag *GoogleCloudDatacatalogV1beta1PolicyTag
  9674  	urlParams_                             gensupport.URLParams
  9675  	ctx_                                   context.Context
  9676  	header_                                http.Header
  9677  }
  9678  
  9679  // Create: Creates a policy tag in the specified taxonomy.
  9680  //
  9681  // - parent: Resource name of the taxonomy that the policy tag will belong to.
  9682  func (r *ProjectsLocationsTaxonomiesPolicyTagsService) Create(parent string, googleclouddatacatalogv1beta1policytag *GoogleCloudDatacatalogV1beta1PolicyTag) *ProjectsLocationsTaxonomiesPolicyTagsCreateCall {
  9683  	c := &ProjectsLocationsTaxonomiesPolicyTagsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9684  	c.parent = parent
  9685  	c.googleclouddatacatalogv1beta1policytag = googleclouddatacatalogv1beta1policytag
  9686  	return c
  9687  }
  9688  
  9689  // Fields allows partial responses to be retrieved. See
  9690  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9691  // details.
  9692  func (c *ProjectsLocationsTaxonomiesPolicyTagsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsTaxonomiesPolicyTagsCreateCall {
  9693  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9694  	return c
  9695  }
  9696  
  9697  // Context sets the context to be used in this call's Do method.
  9698  func (c *ProjectsLocationsTaxonomiesPolicyTagsCreateCall) Context(ctx context.Context) *ProjectsLocationsTaxonomiesPolicyTagsCreateCall {
  9699  	c.ctx_ = ctx
  9700  	return c
  9701  }
  9702  
  9703  // Header returns a http.Header that can be modified by the caller to add
  9704  // headers to the request.
  9705  func (c *ProjectsLocationsTaxonomiesPolicyTagsCreateCall) Header() http.Header {
  9706  	if c.header_ == nil {
  9707  		c.header_ = make(http.Header)
  9708  	}
  9709  	return c.header_
  9710  }
  9711  
  9712  func (c *ProjectsLocationsTaxonomiesPolicyTagsCreateCall) doRequest(alt string) (*http.Response, error) {
  9713  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  9714  	var body io.Reader = nil
  9715  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddatacatalogv1beta1policytag)
  9716  	if err != nil {
  9717  		return nil, err
  9718  	}
  9719  	c.urlParams_.Set("alt", alt)
  9720  	c.urlParams_.Set("prettyPrint", "false")
  9721  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/policyTags")
  9722  	urls += "?" + c.urlParams_.Encode()
  9723  	req, err := http.NewRequest("POST", urls, body)
  9724  	if err != nil {
  9725  		return nil, err
  9726  	}
  9727  	req.Header = reqHeaders
  9728  	googleapi.Expand(req.URL, map[string]string{
  9729  		"parent": c.parent,
  9730  	})
  9731  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9732  }
  9733  
  9734  // Do executes the "datacatalog.projects.locations.taxonomies.policyTags.create" call.
  9735  // Any non-2xx status code is an error. Response headers are in either
  9736  // *GoogleCloudDatacatalogV1beta1PolicyTag.ServerResponse.Header or (if a
  9737  // response was returned at all) in error.(*googleapi.Error).Header. Use
  9738  // googleapi.IsNotModified to check whether the returned error was because
  9739  // http.StatusNotModified was returned.
  9740  func (c *ProjectsLocationsTaxonomiesPolicyTagsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogV1beta1PolicyTag, error) {
  9741  	gensupport.SetOptions(c.urlParams_, opts...)
  9742  	res, err := c.doRequest("json")
  9743  	if res != nil && res.StatusCode == http.StatusNotModified {
  9744  		if res.Body != nil {
  9745  			res.Body.Close()
  9746  		}
  9747  		return nil, gensupport.WrapError(&googleapi.Error{
  9748  			Code:   res.StatusCode,
  9749  			Header: res.Header,
  9750  		})
  9751  	}
  9752  	if err != nil {
  9753  		return nil, err
  9754  	}
  9755  	defer googleapi.CloseBody(res)
  9756  	if err := googleapi.CheckResponse(res); err != nil {
  9757  		return nil, gensupport.WrapError(err)
  9758  	}
  9759  	ret := &GoogleCloudDatacatalogV1beta1PolicyTag{
  9760  		ServerResponse: googleapi.ServerResponse{
  9761  			Header:         res.Header,
  9762  			HTTPStatusCode: res.StatusCode,
  9763  		},
  9764  	}
  9765  	target := &ret
  9766  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9767  		return nil, err
  9768  	}
  9769  	return ret, nil
  9770  }
  9771  
  9772  type ProjectsLocationsTaxonomiesPolicyTagsDeleteCall struct {
  9773  	s          *Service
  9774  	name       string
  9775  	urlParams_ gensupport.URLParams
  9776  	ctx_       context.Context
  9777  	header_    http.Header
  9778  }
  9779  
  9780  // Delete: Deletes a policy tag. Also deletes all of its descendant policy
  9781  // tags.
  9782  //
  9783  //   - name: Resource name of the policy tag to be deleted. All of its descendant
  9784  //     policy tags will also be deleted.
  9785  func (r *ProjectsLocationsTaxonomiesPolicyTagsService) Delete(name string) *ProjectsLocationsTaxonomiesPolicyTagsDeleteCall {
  9786  	c := &ProjectsLocationsTaxonomiesPolicyTagsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9787  	c.name = name
  9788  	return c
  9789  }
  9790  
  9791  // Fields allows partial responses to be retrieved. See
  9792  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9793  // details.
  9794  func (c *ProjectsLocationsTaxonomiesPolicyTagsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsTaxonomiesPolicyTagsDeleteCall {
  9795  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9796  	return c
  9797  }
  9798  
  9799  // Context sets the context to be used in this call's Do method.
  9800  func (c *ProjectsLocationsTaxonomiesPolicyTagsDeleteCall) Context(ctx context.Context) *ProjectsLocationsTaxonomiesPolicyTagsDeleteCall {
  9801  	c.ctx_ = ctx
  9802  	return c
  9803  }
  9804  
  9805  // Header returns a http.Header that can be modified by the caller to add
  9806  // headers to the request.
  9807  func (c *ProjectsLocationsTaxonomiesPolicyTagsDeleteCall) Header() http.Header {
  9808  	if c.header_ == nil {
  9809  		c.header_ = make(http.Header)
  9810  	}
  9811  	return c.header_
  9812  }
  9813  
  9814  func (c *ProjectsLocationsTaxonomiesPolicyTagsDeleteCall) doRequest(alt string) (*http.Response, error) {
  9815  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  9816  	var body io.Reader = nil
  9817  	c.urlParams_.Set("alt", alt)
  9818  	c.urlParams_.Set("prettyPrint", "false")
  9819  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
  9820  	urls += "?" + c.urlParams_.Encode()
  9821  	req, err := http.NewRequest("DELETE", urls, body)
  9822  	if err != nil {
  9823  		return nil, err
  9824  	}
  9825  	req.Header = reqHeaders
  9826  	googleapi.Expand(req.URL, map[string]string{
  9827  		"name": c.name,
  9828  	})
  9829  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9830  }
  9831  
  9832  // Do executes the "datacatalog.projects.locations.taxonomies.policyTags.delete" call.
  9833  // Any non-2xx status code is an error. Response headers are in either
  9834  // *Empty.ServerResponse.Header or (if a response was returned at all) in
  9835  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  9836  // whether the returned error was because http.StatusNotModified was returned.
  9837  func (c *ProjectsLocationsTaxonomiesPolicyTagsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
  9838  	gensupport.SetOptions(c.urlParams_, opts...)
  9839  	res, err := c.doRequest("json")
  9840  	if res != nil && res.StatusCode == http.StatusNotModified {
  9841  		if res.Body != nil {
  9842  			res.Body.Close()
  9843  		}
  9844  		return nil, gensupport.WrapError(&googleapi.Error{
  9845  			Code:   res.StatusCode,
  9846  			Header: res.Header,
  9847  		})
  9848  	}
  9849  	if err != nil {
  9850  		return nil, err
  9851  	}
  9852  	defer googleapi.CloseBody(res)
  9853  	if err := googleapi.CheckResponse(res); err != nil {
  9854  		return nil, gensupport.WrapError(err)
  9855  	}
  9856  	ret := &Empty{
  9857  		ServerResponse: googleapi.ServerResponse{
  9858  			Header:         res.Header,
  9859  			HTTPStatusCode: res.StatusCode,
  9860  		},
  9861  	}
  9862  	target := &ret
  9863  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9864  		return nil, err
  9865  	}
  9866  	return ret, nil
  9867  }
  9868  
  9869  type ProjectsLocationsTaxonomiesPolicyTagsGetCall struct {
  9870  	s            *Service
  9871  	name         string
  9872  	urlParams_   gensupport.URLParams
  9873  	ifNoneMatch_ string
  9874  	ctx_         context.Context
  9875  	header_      http.Header
  9876  }
  9877  
  9878  // Get: Gets a policy tag.
  9879  //
  9880  // - name: Resource name of the requested policy tag.
  9881  func (r *ProjectsLocationsTaxonomiesPolicyTagsService) Get(name string) *ProjectsLocationsTaxonomiesPolicyTagsGetCall {
  9882  	c := &ProjectsLocationsTaxonomiesPolicyTagsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9883  	c.name = name
  9884  	return c
  9885  }
  9886  
  9887  // Fields allows partial responses to be retrieved. See
  9888  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9889  // details.
  9890  func (c *ProjectsLocationsTaxonomiesPolicyTagsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsTaxonomiesPolicyTagsGetCall {
  9891  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9892  	return c
  9893  }
  9894  
  9895  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  9896  // object's ETag matches the given value. This is useful for getting updates
  9897  // only after the object has changed since the last request.
  9898  func (c *ProjectsLocationsTaxonomiesPolicyTagsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsTaxonomiesPolicyTagsGetCall {
  9899  	c.ifNoneMatch_ = entityTag
  9900  	return c
  9901  }
  9902  
  9903  // Context sets the context to be used in this call's Do method.
  9904  func (c *ProjectsLocationsTaxonomiesPolicyTagsGetCall) Context(ctx context.Context) *ProjectsLocationsTaxonomiesPolicyTagsGetCall {
  9905  	c.ctx_ = ctx
  9906  	return c
  9907  }
  9908  
  9909  // Header returns a http.Header that can be modified by the caller to add
  9910  // headers to the request.
  9911  func (c *ProjectsLocationsTaxonomiesPolicyTagsGetCall) Header() http.Header {
  9912  	if c.header_ == nil {
  9913  		c.header_ = make(http.Header)
  9914  	}
  9915  	return c.header_
  9916  }
  9917  
  9918  func (c *ProjectsLocationsTaxonomiesPolicyTagsGetCall) doRequest(alt string) (*http.Response, error) {
  9919  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  9920  	if c.ifNoneMatch_ != "" {
  9921  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  9922  	}
  9923  	var body io.Reader = nil
  9924  	c.urlParams_.Set("alt", alt)
  9925  	c.urlParams_.Set("prettyPrint", "false")
  9926  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
  9927  	urls += "?" + c.urlParams_.Encode()
  9928  	req, err := http.NewRequest("GET", urls, body)
  9929  	if err != nil {
  9930  		return nil, err
  9931  	}
  9932  	req.Header = reqHeaders
  9933  	googleapi.Expand(req.URL, map[string]string{
  9934  		"name": c.name,
  9935  	})
  9936  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9937  }
  9938  
  9939  // Do executes the "datacatalog.projects.locations.taxonomies.policyTags.get" call.
  9940  // Any non-2xx status code is an error. Response headers are in either
  9941  // *GoogleCloudDatacatalogV1beta1PolicyTag.ServerResponse.Header or (if a
  9942  // response was returned at all) in error.(*googleapi.Error).Header. Use
  9943  // googleapi.IsNotModified to check whether the returned error was because
  9944  // http.StatusNotModified was returned.
  9945  func (c *ProjectsLocationsTaxonomiesPolicyTagsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogV1beta1PolicyTag, error) {
  9946  	gensupport.SetOptions(c.urlParams_, opts...)
  9947  	res, err := c.doRequest("json")
  9948  	if res != nil && res.StatusCode == http.StatusNotModified {
  9949  		if res.Body != nil {
  9950  			res.Body.Close()
  9951  		}
  9952  		return nil, gensupport.WrapError(&googleapi.Error{
  9953  			Code:   res.StatusCode,
  9954  			Header: res.Header,
  9955  		})
  9956  	}
  9957  	if err != nil {
  9958  		return nil, err
  9959  	}
  9960  	defer googleapi.CloseBody(res)
  9961  	if err := googleapi.CheckResponse(res); err != nil {
  9962  		return nil, gensupport.WrapError(err)
  9963  	}
  9964  	ret := &GoogleCloudDatacatalogV1beta1PolicyTag{
  9965  		ServerResponse: googleapi.ServerResponse{
  9966  			Header:         res.Header,
  9967  			HTTPStatusCode: res.StatusCode,
  9968  		},
  9969  	}
  9970  	target := &ret
  9971  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9972  		return nil, err
  9973  	}
  9974  	return ret, nil
  9975  }
  9976  
  9977  type ProjectsLocationsTaxonomiesPolicyTagsGetIamPolicyCall struct {
  9978  	s                   *Service
  9979  	resource            string
  9980  	getiampolicyrequest *GetIamPolicyRequest
  9981  	urlParams_          gensupport.URLParams
  9982  	ctx_                context.Context
  9983  	header_             http.Header
  9984  }
  9985  
  9986  // GetIamPolicy: Gets the IAM policy for a taxonomy or a policy tag.
  9987  //
  9988  //   - resource: REQUIRED: The resource for which the policy is being requested.
  9989  //     See Resource names (https://cloud.google.com/apis/design/resource_names)
  9990  //     for the appropriate value for this field.
  9991  func (r *ProjectsLocationsTaxonomiesPolicyTagsService) GetIamPolicy(resource string, getiampolicyrequest *GetIamPolicyRequest) *ProjectsLocationsTaxonomiesPolicyTagsGetIamPolicyCall {
  9992  	c := &ProjectsLocationsTaxonomiesPolicyTagsGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9993  	c.resource = resource
  9994  	c.getiampolicyrequest = getiampolicyrequest
  9995  	return c
  9996  }
  9997  
  9998  // Fields allows partial responses to be retrieved. See
  9999  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10000  // details.
 10001  func (c *ProjectsLocationsTaxonomiesPolicyTagsGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsTaxonomiesPolicyTagsGetIamPolicyCall {
 10002  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10003  	return c
 10004  }
 10005  
 10006  // Context sets the context to be used in this call's Do method.
 10007  func (c *ProjectsLocationsTaxonomiesPolicyTagsGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsTaxonomiesPolicyTagsGetIamPolicyCall {
 10008  	c.ctx_ = ctx
 10009  	return c
 10010  }
 10011  
 10012  // Header returns a http.Header that can be modified by the caller to add
 10013  // headers to the request.
 10014  func (c *ProjectsLocationsTaxonomiesPolicyTagsGetIamPolicyCall) Header() http.Header {
 10015  	if c.header_ == nil {
 10016  		c.header_ = make(http.Header)
 10017  	}
 10018  	return c.header_
 10019  }
 10020  
 10021  func (c *ProjectsLocationsTaxonomiesPolicyTagsGetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
 10022  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 10023  	var body io.Reader = nil
 10024  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.getiampolicyrequest)
 10025  	if err != nil {
 10026  		return nil, err
 10027  	}
 10028  	c.urlParams_.Set("alt", alt)
 10029  	c.urlParams_.Set("prettyPrint", "false")
 10030  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:getIamPolicy")
 10031  	urls += "?" + c.urlParams_.Encode()
 10032  	req, err := http.NewRequest("POST", urls, body)
 10033  	if err != nil {
 10034  		return nil, err
 10035  	}
 10036  	req.Header = reqHeaders
 10037  	googleapi.Expand(req.URL, map[string]string{
 10038  		"resource": c.resource,
 10039  	})
 10040  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10041  }
 10042  
 10043  // Do executes the "datacatalog.projects.locations.taxonomies.policyTags.getIamPolicy" call.
 10044  // Any non-2xx status code is an error. Response headers are in either
 10045  // *Policy.ServerResponse.Header or (if a response was returned at all) in
 10046  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 10047  // whether the returned error was because http.StatusNotModified was returned.
 10048  func (c *ProjectsLocationsTaxonomiesPolicyTagsGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
 10049  	gensupport.SetOptions(c.urlParams_, opts...)
 10050  	res, err := c.doRequest("json")
 10051  	if res != nil && res.StatusCode == http.StatusNotModified {
 10052  		if res.Body != nil {
 10053  			res.Body.Close()
 10054  		}
 10055  		return nil, gensupport.WrapError(&googleapi.Error{
 10056  			Code:   res.StatusCode,
 10057  			Header: res.Header,
 10058  		})
 10059  	}
 10060  	if err != nil {
 10061  		return nil, err
 10062  	}
 10063  	defer googleapi.CloseBody(res)
 10064  	if err := googleapi.CheckResponse(res); err != nil {
 10065  		return nil, gensupport.WrapError(err)
 10066  	}
 10067  	ret := &Policy{
 10068  		ServerResponse: googleapi.ServerResponse{
 10069  			Header:         res.Header,
 10070  			HTTPStatusCode: res.StatusCode,
 10071  		},
 10072  	}
 10073  	target := &ret
 10074  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10075  		return nil, err
 10076  	}
 10077  	return ret, nil
 10078  }
 10079  
 10080  type ProjectsLocationsTaxonomiesPolicyTagsListCall struct {
 10081  	s            *Service
 10082  	parent       string
 10083  	urlParams_   gensupport.URLParams
 10084  	ifNoneMatch_ string
 10085  	ctx_         context.Context
 10086  	header_      http.Header
 10087  }
 10088  
 10089  // List: Lists all policy tags in a taxonomy.
 10090  //
 10091  // - parent: Resource name of the taxonomy to list the policy tags of.
 10092  func (r *ProjectsLocationsTaxonomiesPolicyTagsService) List(parent string) *ProjectsLocationsTaxonomiesPolicyTagsListCall {
 10093  	c := &ProjectsLocationsTaxonomiesPolicyTagsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10094  	c.parent = parent
 10095  	return c
 10096  }
 10097  
 10098  // PageSize sets the optional parameter "pageSize": The maximum number of items
 10099  // to return. Must be a value between 1 and 1000. If not set, defaults to 50.
 10100  func (c *ProjectsLocationsTaxonomiesPolicyTagsListCall) PageSize(pageSize int64) *ProjectsLocationsTaxonomiesPolicyTagsListCall {
 10101  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 10102  	return c
 10103  }
 10104  
 10105  // PageToken sets the optional parameter "pageToken": The next_page_token value
 10106  // returned from a previous List request, if any. If not set, defaults to an
 10107  // empty string.
 10108  func (c *ProjectsLocationsTaxonomiesPolicyTagsListCall) PageToken(pageToken string) *ProjectsLocationsTaxonomiesPolicyTagsListCall {
 10109  	c.urlParams_.Set("pageToken", pageToken)
 10110  	return c
 10111  }
 10112  
 10113  // Fields allows partial responses to be retrieved. See
 10114  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10115  // details.
 10116  func (c *ProjectsLocationsTaxonomiesPolicyTagsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsTaxonomiesPolicyTagsListCall {
 10117  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10118  	return c
 10119  }
 10120  
 10121  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 10122  // object's ETag matches the given value. This is useful for getting updates
 10123  // only after the object has changed since the last request.
 10124  func (c *ProjectsLocationsTaxonomiesPolicyTagsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsTaxonomiesPolicyTagsListCall {
 10125  	c.ifNoneMatch_ = entityTag
 10126  	return c
 10127  }
 10128  
 10129  // Context sets the context to be used in this call's Do method.
 10130  func (c *ProjectsLocationsTaxonomiesPolicyTagsListCall) Context(ctx context.Context) *ProjectsLocationsTaxonomiesPolicyTagsListCall {
 10131  	c.ctx_ = ctx
 10132  	return c
 10133  }
 10134  
 10135  // Header returns a http.Header that can be modified by the caller to add
 10136  // headers to the request.
 10137  func (c *ProjectsLocationsTaxonomiesPolicyTagsListCall) Header() http.Header {
 10138  	if c.header_ == nil {
 10139  		c.header_ = make(http.Header)
 10140  	}
 10141  	return c.header_
 10142  }
 10143  
 10144  func (c *ProjectsLocationsTaxonomiesPolicyTagsListCall) doRequest(alt string) (*http.Response, error) {
 10145  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 10146  	if c.ifNoneMatch_ != "" {
 10147  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 10148  	}
 10149  	var body io.Reader = nil
 10150  	c.urlParams_.Set("alt", alt)
 10151  	c.urlParams_.Set("prettyPrint", "false")
 10152  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/policyTags")
 10153  	urls += "?" + c.urlParams_.Encode()
 10154  	req, err := http.NewRequest("GET", urls, body)
 10155  	if err != nil {
 10156  		return nil, err
 10157  	}
 10158  	req.Header = reqHeaders
 10159  	googleapi.Expand(req.URL, map[string]string{
 10160  		"parent": c.parent,
 10161  	})
 10162  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10163  }
 10164  
 10165  // Do executes the "datacatalog.projects.locations.taxonomies.policyTags.list" call.
 10166  // Any non-2xx status code is an error. Response headers are in either
 10167  // *GoogleCloudDatacatalogV1beta1ListPolicyTagsResponse.ServerResponse.Header
 10168  // or (if a response was returned at all) in error.(*googleapi.Error).Header.
 10169  // Use googleapi.IsNotModified to check whether the returned error was because
 10170  // http.StatusNotModified was returned.
 10171  func (c *ProjectsLocationsTaxonomiesPolicyTagsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogV1beta1ListPolicyTagsResponse, error) {
 10172  	gensupport.SetOptions(c.urlParams_, opts...)
 10173  	res, err := c.doRequest("json")
 10174  	if res != nil && res.StatusCode == http.StatusNotModified {
 10175  		if res.Body != nil {
 10176  			res.Body.Close()
 10177  		}
 10178  		return nil, gensupport.WrapError(&googleapi.Error{
 10179  			Code:   res.StatusCode,
 10180  			Header: res.Header,
 10181  		})
 10182  	}
 10183  	if err != nil {
 10184  		return nil, err
 10185  	}
 10186  	defer googleapi.CloseBody(res)
 10187  	if err := googleapi.CheckResponse(res); err != nil {
 10188  		return nil, gensupport.WrapError(err)
 10189  	}
 10190  	ret := &GoogleCloudDatacatalogV1beta1ListPolicyTagsResponse{
 10191  		ServerResponse: googleapi.ServerResponse{
 10192  			Header:         res.Header,
 10193  			HTTPStatusCode: res.StatusCode,
 10194  		},
 10195  	}
 10196  	target := &ret
 10197  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10198  		return nil, err
 10199  	}
 10200  	return ret, nil
 10201  }
 10202  
 10203  // Pages invokes f for each page of results.
 10204  // A non-nil error returned from f will halt the iteration.
 10205  // The provided context supersedes any context provided to the Context method.
 10206  func (c *ProjectsLocationsTaxonomiesPolicyTagsListCall) Pages(ctx context.Context, f func(*GoogleCloudDatacatalogV1beta1ListPolicyTagsResponse) error) error {
 10207  	c.ctx_ = ctx
 10208  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 10209  	for {
 10210  		x, err := c.Do()
 10211  		if err != nil {
 10212  			return err
 10213  		}
 10214  		if err := f(x); err != nil {
 10215  			return err
 10216  		}
 10217  		if x.NextPageToken == "" {
 10218  			return nil
 10219  		}
 10220  		c.PageToken(x.NextPageToken)
 10221  	}
 10222  }
 10223  
 10224  type ProjectsLocationsTaxonomiesPolicyTagsPatchCall struct {
 10225  	s                                      *Service
 10226  	name                                   string
 10227  	googleclouddatacatalogv1beta1policytag *GoogleCloudDatacatalogV1beta1PolicyTag
 10228  	urlParams_                             gensupport.URLParams
 10229  	ctx_                                   context.Context
 10230  	header_                                http.Header
 10231  }
 10232  
 10233  // Patch: Updates a policy tag.
 10234  //
 10235  //   - name: Identifier. Resource name of this policy tag, whose format is:
 10236  //     "projects/{project_number}/locations/{location_id}/taxonomies/{taxonomy_id}
 10237  //     /policyTags/{id}".
 10238  func (r *ProjectsLocationsTaxonomiesPolicyTagsService) Patch(name string, googleclouddatacatalogv1beta1policytag *GoogleCloudDatacatalogV1beta1PolicyTag) *ProjectsLocationsTaxonomiesPolicyTagsPatchCall {
 10239  	c := &ProjectsLocationsTaxonomiesPolicyTagsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10240  	c.name = name
 10241  	c.googleclouddatacatalogv1beta1policytag = googleclouddatacatalogv1beta1policytag
 10242  	return c
 10243  }
 10244  
 10245  // UpdateMask sets the optional parameter "updateMask": The update mask applies
 10246  // to the resource. Only display_name, description and parent_policy_tag can be
 10247  // updated and thus can be listed in the mask. If update_mask is not provided,
 10248  // all allowed fields (i.e. display_name, description and parent) will be
 10249  // updated. For more information including the `FieldMask` definition, see
 10250  // https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask
 10251  // If not set, defaults to all of the fields that are allowed to update.
 10252  func (c *ProjectsLocationsTaxonomiesPolicyTagsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsTaxonomiesPolicyTagsPatchCall {
 10253  	c.urlParams_.Set("updateMask", updateMask)
 10254  	return c
 10255  }
 10256  
 10257  // Fields allows partial responses to be retrieved. See
 10258  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10259  // details.
 10260  func (c *ProjectsLocationsTaxonomiesPolicyTagsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsTaxonomiesPolicyTagsPatchCall {
 10261  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10262  	return c
 10263  }
 10264  
 10265  // Context sets the context to be used in this call's Do method.
 10266  func (c *ProjectsLocationsTaxonomiesPolicyTagsPatchCall) Context(ctx context.Context) *ProjectsLocationsTaxonomiesPolicyTagsPatchCall {
 10267  	c.ctx_ = ctx
 10268  	return c
 10269  }
 10270  
 10271  // Header returns a http.Header that can be modified by the caller to add
 10272  // headers to the request.
 10273  func (c *ProjectsLocationsTaxonomiesPolicyTagsPatchCall) Header() http.Header {
 10274  	if c.header_ == nil {
 10275  		c.header_ = make(http.Header)
 10276  	}
 10277  	return c.header_
 10278  }
 10279  
 10280  func (c *ProjectsLocationsTaxonomiesPolicyTagsPatchCall) doRequest(alt string) (*http.Response, error) {
 10281  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 10282  	var body io.Reader = nil
 10283  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddatacatalogv1beta1policytag)
 10284  	if err != nil {
 10285  		return nil, err
 10286  	}
 10287  	c.urlParams_.Set("alt", alt)
 10288  	c.urlParams_.Set("prettyPrint", "false")
 10289  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
 10290  	urls += "?" + c.urlParams_.Encode()
 10291  	req, err := http.NewRequest("PATCH", urls, body)
 10292  	if err != nil {
 10293  		return nil, err
 10294  	}
 10295  	req.Header = reqHeaders
 10296  	googleapi.Expand(req.URL, map[string]string{
 10297  		"name": c.name,
 10298  	})
 10299  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10300  }
 10301  
 10302  // Do executes the "datacatalog.projects.locations.taxonomies.policyTags.patch" call.
 10303  // Any non-2xx status code is an error. Response headers are in either
 10304  // *GoogleCloudDatacatalogV1beta1PolicyTag.ServerResponse.Header or (if a
 10305  // response was returned at all) in error.(*googleapi.Error).Header. Use
 10306  // googleapi.IsNotModified to check whether the returned error was because
 10307  // http.StatusNotModified was returned.
 10308  func (c *ProjectsLocationsTaxonomiesPolicyTagsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogV1beta1PolicyTag, error) {
 10309  	gensupport.SetOptions(c.urlParams_, opts...)
 10310  	res, err := c.doRequest("json")
 10311  	if res != nil && res.StatusCode == http.StatusNotModified {
 10312  		if res.Body != nil {
 10313  			res.Body.Close()
 10314  		}
 10315  		return nil, gensupport.WrapError(&googleapi.Error{
 10316  			Code:   res.StatusCode,
 10317  			Header: res.Header,
 10318  		})
 10319  	}
 10320  	if err != nil {
 10321  		return nil, err
 10322  	}
 10323  	defer googleapi.CloseBody(res)
 10324  	if err := googleapi.CheckResponse(res); err != nil {
 10325  		return nil, gensupport.WrapError(err)
 10326  	}
 10327  	ret := &GoogleCloudDatacatalogV1beta1PolicyTag{
 10328  		ServerResponse: googleapi.ServerResponse{
 10329  			Header:         res.Header,
 10330  			HTTPStatusCode: res.StatusCode,
 10331  		},
 10332  	}
 10333  	target := &ret
 10334  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10335  		return nil, err
 10336  	}
 10337  	return ret, nil
 10338  }
 10339  
 10340  type ProjectsLocationsTaxonomiesPolicyTagsSetIamPolicyCall struct {
 10341  	s                   *Service
 10342  	resource            string
 10343  	setiampolicyrequest *SetIamPolicyRequest
 10344  	urlParams_          gensupport.URLParams
 10345  	ctx_                context.Context
 10346  	header_             http.Header
 10347  }
 10348  
 10349  // SetIamPolicy: Sets the IAM policy for a taxonomy or a policy tag.
 10350  //
 10351  //   - resource: REQUIRED: The resource for which the policy is being specified.
 10352  //     See Resource names (https://cloud.google.com/apis/design/resource_names)
 10353  //     for the appropriate value for this field.
 10354  func (r *ProjectsLocationsTaxonomiesPolicyTagsService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsLocationsTaxonomiesPolicyTagsSetIamPolicyCall {
 10355  	c := &ProjectsLocationsTaxonomiesPolicyTagsSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10356  	c.resource = resource
 10357  	c.setiampolicyrequest = setiampolicyrequest
 10358  	return c
 10359  }
 10360  
 10361  // Fields allows partial responses to be retrieved. See
 10362  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10363  // details.
 10364  func (c *ProjectsLocationsTaxonomiesPolicyTagsSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsTaxonomiesPolicyTagsSetIamPolicyCall {
 10365  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10366  	return c
 10367  }
 10368  
 10369  // Context sets the context to be used in this call's Do method.
 10370  func (c *ProjectsLocationsTaxonomiesPolicyTagsSetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsTaxonomiesPolicyTagsSetIamPolicyCall {
 10371  	c.ctx_ = ctx
 10372  	return c
 10373  }
 10374  
 10375  // Header returns a http.Header that can be modified by the caller to add
 10376  // headers to the request.
 10377  func (c *ProjectsLocationsTaxonomiesPolicyTagsSetIamPolicyCall) Header() http.Header {
 10378  	if c.header_ == nil {
 10379  		c.header_ = make(http.Header)
 10380  	}
 10381  	return c.header_
 10382  }
 10383  
 10384  func (c *ProjectsLocationsTaxonomiesPolicyTagsSetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
 10385  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 10386  	var body io.Reader = nil
 10387  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest)
 10388  	if err != nil {
 10389  		return nil, err
 10390  	}
 10391  	c.urlParams_.Set("alt", alt)
 10392  	c.urlParams_.Set("prettyPrint", "false")
 10393  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:setIamPolicy")
 10394  	urls += "?" + c.urlParams_.Encode()
 10395  	req, err := http.NewRequest("POST", urls, body)
 10396  	if err != nil {
 10397  		return nil, err
 10398  	}
 10399  	req.Header = reqHeaders
 10400  	googleapi.Expand(req.URL, map[string]string{
 10401  		"resource": c.resource,
 10402  	})
 10403  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10404  }
 10405  
 10406  // Do executes the "datacatalog.projects.locations.taxonomies.policyTags.setIamPolicy" call.
 10407  // Any non-2xx status code is an error. Response headers are in either
 10408  // *Policy.ServerResponse.Header or (if a response was returned at all) in
 10409  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 10410  // whether the returned error was because http.StatusNotModified was returned.
 10411  func (c *ProjectsLocationsTaxonomiesPolicyTagsSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
 10412  	gensupport.SetOptions(c.urlParams_, opts...)
 10413  	res, err := c.doRequest("json")
 10414  	if res != nil && res.StatusCode == http.StatusNotModified {
 10415  		if res.Body != nil {
 10416  			res.Body.Close()
 10417  		}
 10418  		return nil, gensupport.WrapError(&googleapi.Error{
 10419  			Code:   res.StatusCode,
 10420  			Header: res.Header,
 10421  		})
 10422  	}
 10423  	if err != nil {
 10424  		return nil, err
 10425  	}
 10426  	defer googleapi.CloseBody(res)
 10427  	if err := googleapi.CheckResponse(res); err != nil {
 10428  		return nil, gensupport.WrapError(err)
 10429  	}
 10430  	ret := &Policy{
 10431  		ServerResponse: googleapi.ServerResponse{
 10432  			Header:         res.Header,
 10433  			HTTPStatusCode: res.StatusCode,
 10434  		},
 10435  	}
 10436  	target := &ret
 10437  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10438  		return nil, err
 10439  	}
 10440  	return ret, nil
 10441  }
 10442  
 10443  type ProjectsLocationsTaxonomiesPolicyTagsTestIamPermissionsCall struct {
 10444  	s                         *Service
 10445  	resource                  string
 10446  	testiampermissionsrequest *TestIamPermissionsRequest
 10447  	urlParams_                gensupport.URLParams
 10448  	ctx_                      context.Context
 10449  	header_                   http.Header
 10450  }
 10451  
 10452  // TestIamPermissions: Returns the permissions that a caller has on the
 10453  // specified taxonomy or policy tag.
 10454  //
 10455  //   - resource: REQUIRED: The resource for which the policy detail is being
 10456  //     requested. See Resource names
 10457  //     (https://cloud.google.com/apis/design/resource_names) for the appropriate
 10458  //     value for this field.
 10459  func (r *ProjectsLocationsTaxonomiesPolicyTagsService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsLocationsTaxonomiesPolicyTagsTestIamPermissionsCall {
 10460  	c := &ProjectsLocationsTaxonomiesPolicyTagsTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10461  	c.resource = resource
 10462  	c.testiampermissionsrequest = testiampermissionsrequest
 10463  	return c
 10464  }
 10465  
 10466  // Fields allows partial responses to be retrieved. See
 10467  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10468  // details.
 10469  func (c *ProjectsLocationsTaxonomiesPolicyTagsTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsLocationsTaxonomiesPolicyTagsTestIamPermissionsCall {
 10470  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10471  	return c
 10472  }
 10473  
 10474  // Context sets the context to be used in this call's Do method.
 10475  func (c *ProjectsLocationsTaxonomiesPolicyTagsTestIamPermissionsCall) Context(ctx context.Context) *ProjectsLocationsTaxonomiesPolicyTagsTestIamPermissionsCall {
 10476  	c.ctx_ = ctx
 10477  	return c
 10478  }
 10479  
 10480  // Header returns a http.Header that can be modified by the caller to add
 10481  // headers to the request.
 10482  func (c *ProjectsLocationsTaxonomiesPolicyTagsTestIamPermissionsCall) Header() http.Header {
 10483  	if c.header_ == nil {
 10484  		c.header_ = make(http.Header)
 10485  	}
 10486  	return c.header_
 10487  }
 10488  
 10489  func (c *ProjectsLocationsTaxonomiesPolicyTagsTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) {
 10490  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 10491  	var body io.Reader = nil
 10492  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest)
 10493  	if err != nil {
 10494  		return nil, err
 10495  	}
 10496  	c.urlParams_.Set("alt", alt)
 10497  	c.urlParams_.Set("prettyPrint", "false")
 10498  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:testIamPermissions")
 10499  	urls += "?" + c.urlParams_.Encode()
 10500  	req, err := http.NewRequest("POST", urls, body)
 10501  	if err != nil {
 10502  		return nil, err
 10503  	}
 10504  	req.Header = reqHeaders
 10505  	googleapi.Expand(req.URL, map[string]string{
 10506  		"resource": c.resource,
 10507  	})
 10508  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10509  }
 10510  
 10511  // Do executes the "datacatalog.projects.locations.taxonomies.policyTags.testIamPermissions" call.
 10512  // Any non-2xx status code is an error. Response headers are in either
 10513  // *TestIamPermissionsResponse.ServerResponse.Header or (if a response was
 10514  // returned at all) in error.(*googleapi.Error).Header. Use
 10515  // googleapi.IsNotModified to check whether the returned error was because
 10516  // http.StatusNotModified was returned.
 10517  func (c *ProjectsLocationsTaxonomiesPolicyTagsTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) {
 10518  	gensupport.SetOptions(c.urlParams_, opts...)
 10519  	res, err := c.doRequest("json")
 10520  	if res != nil && res.StatusCode == http.StatusNotModified {
 10521  		if res.Body != nil {
 10522  			res.Body.Close()
 10523  		}
 10524  		return nil, gensupport.WrapError(&googleapi.Error{
 10525  			Code:   res.StatusCode,
 10526  			Header: res.Header,
 10527  		})
 10528  	}
 10529  	if err != nil {
 10530  		return nil, err
 10531  	}
 10532  	defer googleapi.CloseBody(res)
 10533  	if err := googleapi.CheckResponse(res); err != nil {
 10534  		return nil, gensupport.WrapError(err)
 10535  	}
 10536  	ret := &TestIamPermissionsResponse{
 10537  		ServerResponse: googleapi.ServerResponse{
 10538  			Header:         res.Header,
 10539  			HTTPStatusCode: res.StatusCode,
 10540  		},
 10541  	}
 10542  	target := &ret
 10543  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10544  		return nil, err
 10545  	}
 10546  	return ret, nil
 10547  }
 10548  

View as plain text