...

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

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

     1  // Copyright 2023 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 datalineage provides access to the Data Lineage API.
     8  //
     9  // For product documentation, see: https://cloud.google.com/data-catalog
    10  //
    11  // # Creating a client
    12  //
    13  // Usage example:
    14  //
    15  //	import "google.golang.org/api/datalineage/v1"
    16  //	...
    17  //	ctx := context.Background()
    18  //	datalineageService, err := datalineage.NewService(ctx)
    19  //
    20  // In this example, Google Application Default Credentials are used for authentication.
    21  //
    22  // For information on how to create and obtain Application Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials.
    23  //
    24  // # Other authentication options
    25  //
    26  // To use an API key for authentication (note: some APIs do not support API keys), use option.WithAPIKey:
    27  //
    28  //	datalineageService, err := datalineage.NewService(ctx, option.WithAPIKey("AIza..."))
    29  //
    30  // To use an OAuth token (e.g., a user token obtained via a three-legged OAuth flow), use option.WithTokenSource:
    31  //
    32  //	config := &oauth2.Config{...}
    33  //	// ...
    34  //	token, err := config.Exchange(ctx, ...)
    35  //	datalineageService, err := datalineage.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))
    36  //
    37  // See https://godoc.org/google.golang.org/api/option/ for details on options.
    38  package datalineage // import "google.golang.org/api/datalineage/v1"
    39  
    40  import (
    41  	"bytes"
    42  	"context"
    43  	"encoding/json"
    44  	"errors"
    45  	"fmt"
    46  	"io"
    47  	"net/http"
    48  	"net/url"
    49  	"strconv"
    50  	"strings"
    51  
    52  	googleapi "google.golang.org/api/googleapi"
    53  	internal "google.golang.org/api/internal"
    54  	gensupport "google.golang.org/api/internal/gensupport"
    55  	option "google.golang.org/api/option"
    56  	internaloption "google.golang.org/api/option/internaloption"
    57  	htransport "google.golang.org/api/transport/http"
    58  )
    59  
    60  // Always reference these packages, just in case the auto-generated code
    61  // below doesn't.
    62  var _ = bytes.NewBuffer
    63  var _ = strconv.Itoa
    64  var _ = fmt.Sprintf
    65  var _ = json.NewDecoder
    66  var _ = io.Copy
    67  var _ = url.Parse
    68  var _ = gensupport.MarshalJSON
    69  var _ = googleapi.Version
    70  var _ = errors.New
    71  var _ = strings.Replace
    72  var _ = context.Canceled
    73  var _ = internaloption.WithDefaultEndpoint
    74  var _ = internal.Version
    75  
    76  const apiId = "datalineage:v1"
    77  const apiName = "datalineage"
    78  const apiVersion = "v1"
    79  const basePath = "https://datalineage.googleapis.com/"
    80  const mtlsBasePath = "https://datalineage.mtls.googleapis.com/"
    81  
    82  // OAuth2 scopes used by this API.
    83  const (
    84  	// See, edit, configure, and delete your Google Cloud data and see the
    85  	// email address for your Google Account.
    86  	CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform"
    87  )
    88  
    89  // NewService creates a new Service.
    90  func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) {
    91  	scopesOption := internaloption.WithDefaultScopes(
    92  		"https://www.googleapis.com/auth/cloud-platform",
    93  	)
    94  	// NOTE: prepend, so we don't override user-specified scopes.
    95  	opts = append([]option.ClientOption{scopesOption}, opts...)
    96  	opts = append(opts, internaloption.WithDefaultEndpoint(basePath))
    97  	opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath))
    98  	client, endpoint, err := htransport.NewClient(ctx, opts...)
    99  	if err != nil {
   100  		return nil, err
   101  	}
   102  	s, err := New(client)
   103  	if err != nil {
   104  		return nil, err
   105  	}
   106  	if endpoint != "" {
   107  		s.BasePath = endpoint
   108  	}
   109  	return s, nil
   110  }
   111  
   112  // New creates a new Service. It uses the provided http.Client for requests.
   113  //
   114  // Deprecated: please use NewService instead.
   115  // To provide a custom HTTP client, use option.WithHTTPClient.
   116  // If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead.
   117  func New(client *http.Client) (*Service, error) {
   118  	if client == nil {
   119  		return nil, errors.New("client is nil")
   120  	}
   121  	s := &Service{client: client, BasePath: basePath}
   122  	s.Projects = NewProjectsService(s)
   123  	return s, nil
   124  }
   125  
   126  type Service struct {
   127  	client    *http.Client
   128  	BasePath  string // API endpoint base URL
   129  	UserAgent string // optional additional User-Agent fragment
   130  
   131  	Projects *ProjectsService
   132  }
   133  
   134  func (s *Service) userAgent() string {
   135  	if s.UserAgent == "" {
   136  		return googleapi.UserAgent
   137  	}
   138  	return googleapi.UserAgent + " " + s.UserAgent
   139  }
   140  
   141  func NewProjectsService(s *Service) *ProjectsService {
   142  	rs := &ProjectsService{s: s}
   143  	rs.Locations = NewProjectsLocationsService(s)
   144  	return rs
   145  }
   146  
   147  type ProjectsService struct {
   148  	s *Service
   149  
   150  	Locations *ProjectsLocationsService
   151  }
   152  
   153  func NewProjectsLocationsService(s *Service) *ProjectsLocationsService {
   154  	rs := &ProjectsLocationsService{s: s}
   155  	rs.Operations = NewProjectsLocationsOperationsService(s)
   156  	rs.Processes = NewProjectsLocationsProcessesService(s)
   157  	return rs
   158  }
   159  
   160  type ProjectsLocationsService struct {
   161  	s *Service
   162  
   163  	Operations *ProjectsLocationsOperationsService
   164  
   165  	Processes *ProjectsLocationsProcessesService
   166  }
   167  
   168  func NewProjectsLocationsOperationsService(s *Service) *ProjectsLocationsOperationsService {
   169  	rs := &ProjectsLocationsOperationsService{s: s}
   170  	return rs
   171  }
   172  
   173  type ProjectsLocationsOperationsService struct {
   174  	s *Service
   175  }
   176  
   177  func NewProjectsLocationsProcessesService(s *Service) *ProjectsLocationsProcessesService {
   178  	rs := &ProjectsLocationsProcessesService{s: s}
   179  	rs.Runs = NewProjectsLocationsProcessesRunsService(s)
   180  	return rs
   181  }
   182  
   183  type ProjectsLocationsProcessesService struct {
   184  	s *Service
   185  
   186  	Runs *ProjectsLocationsProcessesRunsService
   187  }
   188  
   189  func NewProjectsLocationsProcessesRunsService(s *Service) *ProjectsLocationsProcessesRunsService {
   190  	rs := &ProjectsLocationsProcessesRunsService{s: s}
   191  	rs.LineageEvents = NewProjectsLocationsProcessesRunsLineageEventsService(s)
   192  	return rs
   193  }
   194  
   195  type ProjectsLocationsProcessesRunsService struct {
   196  	s *Service
   197  
   198  	LineageEvents *ProjectsLocationsProcessesRunsLineageEventsService
   199  }
   200  
   201  func NewProjectsLocationsProcessesRunsLineageEventsService(s *Service) *ProjectsLocationsProcessesRunsLineageEventsService {
   202  	rs := &ProjectsLocationsProcessesRunsLineageEventsService{s: s}
   203  	return rs
   204  }
   205  
   206  type ProjectsLocationsProcessesRunsLineageEventsService struct {
   207  	s *Service
   208  }
   209  
   210  // GoogleCloudDatacatalogLineageV1BatchSearchLinkProcessesRequest:
   211  // Request message for BatchSearchLinkProcesses.
   212  type GoogleCloudDatacatalogLineageV1BatchSearchLinkProcessesRequest struct {
   213  	// Links: Required. An array of links to check for their associated
   214  	// LineageProcesses. The maximum number of items in this array is 100.
   215  	// If the request contains more than 100 links, it returns the
   216  	// `INVALID_ARGUMENT` error. Format:
   217  	// `projects/{project}/locations/{location}/links/{link}`.
   218  	Links []string `json:"links,omitempty"`
   219  
   220  	// PageSize: The maximum number of processes to return in a single page
   221  	// of the response. A page may contain fewer results than this value.
   222  	PageSize int64 `json:"pageSize,omitempty"`
   223  
   224  	// PageToken: The page token received from a previous
   225  	// `BatchSearchLinkProcesses` call. Use it to get the next page. When
   226  	// requesting subsequent pages of a response, remember that all
   227  	// parameters must match the values you provided in the original
   228  	// request.
   229  	PageToken string `json:"pageToken,omitempty"`
   230  
   231  	// ForceSendFields is a list of field names (e.g. "Links") to
   232  	// unconditionally include in API requests. By default, fields with
   233  	// empty or default values are omitted from API requests. However, any
   234  	// non-pointer, non-interface field appearing in ForceSendFields will be
   235  	// sent to the server regardless of whether the field is empty or not.
   236  	// This may be used to include empty fields in Patch requests.
   237  	ForceSendFields []string `json:"-"`
   238  
   239  	// NullFields is a list of field names (e.g. "Links") to include in API
   240  	// requests with the JSON null value. By default, fields with empty
   241  	// values are omitted from API requests. However, any field with an
   242  	// empty value appearing in NullFields will be sent to the server as
   243  	// null. It is an error if a field in this list has a non-empty value.
   244  	// This may be used to include null fields in Patch requests.
   245  	NullFields []string `json:"-"`
   246  }
   247  
   248  func (s *GoogleCloudDatacatalogLineageV1BatchSearchLinkProcessesRequest) MarshalJSON() ([]byte, error) {
   249  	type NoMethod GoogleCloudDatacatalogLineageV1BatchSearchLinkProcessesRequest
   250  	raw := NoMethod(*s)
   251  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   252  }
   253  
   254  // GoogleCloudDatacatalogLineageV1BatchSearchLinkProcessesResponse:
   255  // Response message for BatchSearchLinkProcesses.
   256  type GoogleCloudDatacatalogLineageV1BatchSearchLinkProcessesResponse struct {
   257  	// NextPageToken: The token to specify as `page_token` in the subsequent
   258  	// call to get the next page. Omitted if there are no more pages in the
   259  	// response.
   260  	NextPageToken string `json:"nextPageToken,omitempty"`
   261  
   262  	// ProcessLinks: An array of processes associated with the specified
   263  	// links.
   264  	ProcessLinks []*GoogleCloudDatacatalogLineageV1ProcessLinks `json:"processLinks,omitempty"`
   265  
   266  	// ServerResponse contains the HTTP response code and headers from the
   267  	// server.
   268  	googleapi.ServerResponse `json:"-"`
   269  
   270  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
   271  	// unconditionally include in API requests. By default, fields with
   272  	// empty or default values are omitted from API requests. However, any
   273  	// non-pointer, non-interface field appearing in ForceSendFields will be
   274  	// sent to the server regardless of whether the field is empty or not.
   275  	// This may be used to include empty fields in Patch requests.
   276  	ForceSendFields []string `json:"-"`
   277  
   278  	// NullFields is a list of field names (e.g. "NextPageToken") to include
   279  	// in API requests with the JSON null value. By default, fields with
   280  	// empty values are omitted from API requests. However, any field with
   281  	// an empty value appearing in NullFields will be sent to the server as
   282  	// null. It is an error if a field in this list has a non-empty value.
   283  	// This may be used to include null fields in Patch requests.
   284  	NullFields []string `json:"-"`
   285  }
   286  
   287  func (s *GoogleCloudDatacatalogLineageV1BatchSearchLinkProcessesResponse) MarshalJSON() ([]byte, error) {
   288  	type NoMethod GoogleCloudDatacatalogLineageV1BatchSearchLinkProcessesResponse
   289  	raw := NoMethod(*s)
   290  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   291  }
   292  
   293  // GoogleCloudDatacatalogLineageV1EntityReference: The soft reference to
   294  // everything you can attach a lineage event to.
   295  type GoogleCloudDatacatalogLineageV1EntityReference struct {
   296  	// FullyQualifiedName: Required. Fully Qualified Name (FQN)
   297  	// (https://cloud.google.com/data-catalog/docs/fully-qualified-names) of
   298  	// the entity.
   299  	FullyQualifiedName string `json:"fullyQualifiedName,omitempty"`
   300  
   301  	// ForceSendFields is a list of field names (e.g. "FullyQualifiedName")
   302  	// to unconditionally include in API requests. By default, fields with
   303  	// empty or default values are omitted from API requests. However, any
   304  	// non-pointer, non-interface field appearing in ForceSendFields will be
   305  	// sent to the server regardless of whether the field is empty or not.
   306  	// This may be used to include empty fields in Patch requests.
   307  	ForceSendFields []string `json:"-"`
   308  
   309  	// NullFields is a list of field names (e.g. "FullyQualifiedName") to
   310  	// include in API requests with the JSON null value. By default, fields
   311  	// with empty values are omitted from API requests. However, any field
   312  	// with an empty value appearing in NullFields will be sent to the
   313  	// server as null. It is an error if a field in this list has a
   314  	// non-empty value. This may be used to include null fields in Patch
   315  	// requests.
   316  	NullFields []string `json:"-"`
   317  }
   318  
   319  func (s *GoogleCloudDatacatalogLineageV1EntityReference) MarshalJSON() ([]byte, error) {
   320  	type NoMethod GoogleCloudDatacatalogLineageV1EntityReference
   321  	raw := NoMethod(*s)
   322  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   323  }
   324  
   325  // GoogleCloudDatacatalogLineageV1EventLink: A lineage between source
   326  // and target entities.
   327  type GoogleCloudDatacatalogLineageV1EventLink struct {
   328  	// Source: Required. Reference to the source entity
   329  	Source *GoogleCloudDatacatalogLineageV1EntityReference `json:"source,omitempty"`
   330  
   331  	// Target: Required. Reference to the target entity
   332  	Target *GoogleCloudDatacatalogLineageV1EntityReference `json:"target,omitempty"`
   333  
   334  	// ForceSendFields is a list of field names (e.g. "Source") to
   335  	// unconditionally include in API requests. By default, fields with
   336  	// empty or default values are omitted from API requests. However, any
   337  	// non-pointer, non-interface field appearing in ForceSendFields will be
   338  	// sent to the server regardless of whether the field is empty or not.
   339  	// This may be used to include empty fields in Patch requests.
   340  	ForceSendFields []string `json:"-"`
   341  
   342  	// NullFields is a list of field names (e.g. "Source") to include in API
   343  	// requests with the JSON null value. By default, fields with empty
   344  	// values are omitted from API requests. However, any field with an
   345  	// empty value appearing in NullFields will be sent to the server as
   346  	// null. It is an error if a field in this list has a non-empty value.
   347  	// This may be used to include null fields in Patch requests.
   348  	NullFields []string `json:"-"`
   349  }
   350  
   351  func (s *GoogleCloudDatacatalogLineageV1EventLink) MarshalJSON() ([]byte, error) {
   352  	type NoMethod GoogleCloudDatacatalogLineageV1EventLink
   353  	raw := NoMethod(*s)
   354  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   355  }
   356  
   357  // GoogleCloudDatacatalogLineageV1LineageEvent: A lineage event
   358  // represents an operation on assets. Within the operation, the data
   359  // flows from the source to the target defined in the links field.
   360  type GoogleCloudDatacatalogLineageV1LineageEvent struct {
   361  	// EndTime: Optional. The end of the transformation which resulted in
   362  	// this lineage event. For streaming scenarios, it should be the end of
   363  	// the period from which the lineage is being reported.
   364  	EndTime string `json:"endTime,omitempty"`
   365  
   366  	// Links: Optional. List of source-target pairs. Can't contain more than
   367  	// 100 tuples.
   368  	Links []*GoogleCloudDatacatalogLineageV1EventLink `json:"links,omitempty"`
   369  
   370  	// Name: Immutable. The resource name of the lineage event. Format:
   371  	// `projects/{project}/locations/{location}/processes/{process}/runs/{run
   372  	// }/lineageEvents/{lineage_event}`. Can be specified or auto-assigned.
   373  	// {lineage_event} must be not longer than 200 characters and only
   374  	// contain characters in a set: `a-zA-Z0-9_-:.`
   375  	Name string `json:"name,omitempty"`
   376  
   377  	// StartTime: Required. The beginning of the transformation which
   378  	// resulted in this lineage event. For streaming scenarios, it should be
   379  	// the beginning of the period from which the lineage is being reported.
   380  	StartTime string `json:"startTime,omitempty"`
   381  
   382  	// ServerResponse contains the HTTP response code and headers from the
   383  	// server.
   384  	googleapi.ServerResponse `json:"-"`
   385  
   386  	// ForceSendFields is a list of field names (e.g. "EndTime") to
   387  	// unconditionally include in API requests. By default, fields with
   388  	// empty or default values are omitted from API requests. However, any
   389  	// non-pointer, non-interface field appearing in ForceSendFields will be
   390  	// sent to the server regardless of whether the field is empty or not.
   391  	// This may be used to include empty fields in Patch requests.
   392  	ForceSendFields []string `json:"-"`
   393  
   394  	// NullFields is a list of field names (e.g. "EndTime") to include in
   395  	// API requests with the JSON null value. By default, fields with empty
   396  	// values are omitted from API requests. However, any field with an
   397  	// empty value appearing in NullFields will be sent to the server as
   398  	// null. It is an error if a field in this list has a non-empty value.
   399  	// This may be used to include null fields in Patch requests.
   400  	NullFields []string `json:"-"`
   401  }
   402  
   403  func (s *GoogleCloudDatacatalogLineageV1LineageEvent) MarshalJSON() ([]byte, error) {
   404  	type NoMethod GoogleCloudDatacatalogLineageV1LineageEvent
   405  	raw := NoMethod(*s)
   406  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   407  }
   408  
   409  // GoogleCloudDatacatalogLineageV1Link: Links represent the data flow
   410  // between **source** (upstream) and **target** (downstream) assets in
   411  // transformation pipelines. Links are created when LineageEvents record
   412  // data transformation between related assets.
   413  type GoogleCloudDatacatalogLineageV1Link struct {
   414  	// EndTime: The end of the last event establishing this link.
   415  	EndTime string `json:"endTime,omitempty"`
   416  
   417  	// Name: Output only. Immutable. The name of the link. Format:
   418  	// `projects/{project}/locations/{location}/links/{link}`.
   419  	Name string `json:"name,omitempty"`
   420  
   421  	// Source: The pointer to the entity that is the **source** of this
   422  	// link.
   423  	Source *GoogleCloudDatacatalogLineageV1EntityReference `json:"source,omitempty"`
   424  
   425  	// StartTime: The start of the first event establishing this link.
   426  	StartTime string `json:"startTime,omitempty"`
   427  
   428  	// Target: The pointer to the entity that is the **target** of this
   429  	// link.
   430  	Target *GoogleCloudDatacatalogLineageV1EntityReference `json:"target,omitempty"`
   431  
   432  	// ForceSendFields is a list of field names (e.g. "EndTime") to
   433  	// unconditionally include in API requests. By default, fields with
   434  	// empty or default values are omitted from API requests. However, any
   435  	// non-pointer, non-interface field appearing in ForceSendFields will be
   436  	// sent to the server regardless of whether the field is empty or not.
   437  	// This may be used to include empty fields in Patch requests.
   438  	ForceSendFields []string `json:"-"`
   439  
   440  	// NullFields is a list of field names (e.g. "EndTime") to include in
   441  	// API requests with the JSON null value. By default, fields with empty
   442  	// values are omitted from API requests. However, any field with an
   443  	// empty value appearing in NullFields will be sent to the server as
   444  	// null. It is an error if a field in this list has a non-empty value.
   445  	// This may be used to include null fields in Patch requests.
   446  	NullFields []string `json:"-"`
   447  }
   448  
   449  func (s *GoogleCloudDatacatalogLineageV1Link) MarshalJSON() ([]byte, error) {
   450  	type NoMethod GoogleCloudDatacatalogLineageV1Link
   451  	raw := NoMethod(*s)
   452  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   453  }
   454  
   455  // GoogleCloudDatacatalogLineageV1ListLineageEventsResponse: Response
   456  // message for ListLineageEvents.
   457  type GoogleCloudDatacatalogLineageV1ListLineageEventsResponse struct {
   458  	// LineageEvents: Lineage events from the specified project and
   459  	// location.
   460  	LineageEvents []*GoogleCloudDatacatalogLineageV1LineageEvent `json:"lineageEvents,omitempty"`
   461  
   462  	// NextPageToken: The token to specify as `page_token` in the next call
   463  	// to get the next page. If this field is omitted, there are no
   464  	// subsequent pages.
   465  	NextPageToken string `json:"nextPageToken,omitempty"`
   466  
   467  	// ServerResponse contains the HTTP response code and headers from the
   468  	// server.
   469  	googleapi.ServerResponse `json:"-"`
   470  
   471  	// ForceSendFields is a list of field names (e.g. "LineageEvents") to
   472  	// unconditionally include in API requests. By default, fields with
   473  	// empty or default values are omitted from API requests. However, any
   474  	// non-pointer, non-interface field appearing in ForceSendFields will be
   475  	// sent to the server regardless of whether the field is empty or not.
   476  	// This may be used to include empty fields in Patch requests.
   477  	ForceSendFields []string `json:"-"`
   478  
   479  	// NullFields is a list of field names (e.g. "LineageEvents") to include
   480  	// in API requests with the JSON null value. By default, fields with
   481  	// empty values are omitted from API requests. However, any field with
   482  	// an empty value appearing in NullFields will be sent to the server as
   483  	// null. It is an error if a field in this list has a non-empty value.
   484  	// This may be used to include null fields in Patch requests.
   485  	NullFields []string `json:"-"`
   486  }
   487  
   488  func (s *GoogleCloudDatacatalogLineageV1ListLineageEventsResponse) MarshalJSON() ([]byte, error) {
   489  	type NoMethod GoogleCloudDatacatalogLineageV1ListLineageEventsResponse
   490  	raw := NoMethod(*s)
   491  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   492  }
   493  
   494  // GoogleCloudDatacatalogLineageV1ListProcessesResponse: Response
   495  // message for ListProcesses.
   496  type GoogleCloudDatacatalogLineageV1ListProcessesResponse struct {
   497  	// NextPageToken: The token to specify as `page_token` in the next call
   498  	// to get the next page. If this field is omitted, there are no
   499  	// subsequent pages.
   500  	NextPageToken string `json:"nextPageToken,omitempty"`
   501  
   502  	// Processes: The processes from the specified project and location.
   503  	Processes []*GoogleCloudDatacatalogLineageV1Process `json:"processes,omitempty"`
   504  
   505  	// ServerResponse contains the HTTP response code and headers from the
   506  	// server.
   507  	googleapi.ServerResponse `json:"-"`
   508  
   509  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
   510  	// unconditionally include in API requests. By default, fields with
   511  	// empty or default values are omitted from API requests. However, any
   512  	// non-pointer, non-interface field appearing in ForceSendFields will be
   513  	// sent to the server regardless of whether the field is empty or not.
   514  	// This may be used to include empty fields in Patch requests.
   515  	ForceSendFields []string `json:"-"`
   516  
   517  	// NullFields is a list of field names (e.g. "NextPageToken") to include
   518  	// in API requests with the JSON null value. By default, fields with
   519  	// empty values are omitted from API requests. However, any field with
   520  	// an empty value appearing in NullFields will be sent to the server as
   521  	// null. It is an error if a field in this list has a non-empty value.
   522  	// This may be used to include null fields in Patch requests.
   523  	NullFields []string `json:"-"`
   524  }
   525  
   526  func (s *GoogleCloudDatacatalogLineageV1ListProcessesResponse) MarshalJSON() ([]byte, error) {
   527  	type NoMethod GoogleCloudDatacatalogLineageV1ListProcessesResponse
   528  	raw := NoMethod(*s)
   529  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   530  }
   531  
   532  // GoogleCloudDatacatalogLineageV1ListRunsResponse: Response message for
   533  // ListRuns.
   534  type GoogleCloudDatacatalogLineageV1ListRunsResponse struct {
   535  	// NextPageToken: The token to specify as `page_token` in the next call
   536  	// to get the next page. If this field is omitted, there are no
   537  	// subsequent pages.
   538  	NextPageToken string `json:"nextPageToken,omitempty"`
   539  
   540  	// Runs: The runs from the specified project and location.
   541  	Runs []*GoogleCloudDatacatalogLineageV1Run `json:"runs,omitempty"`
   542  
   543  	// ServerResponse contains the HTTP response code and headers from the
   544  	// server.
   545  	googleapi.ServerResponse `json:"-"`
   546  
   547  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
   548  	// unconditionally include in API requests. By default, fields with
   549  	// empty or default values are omitted from API requests. However, any
   550  	// non-pointer, non-interface field appearing in ForceSendFields will be
   551  	// sent to the server regardless of whether the field is empty or not.
   552  	// This may be used to include empty fields in Patch requests.
   553  	ForceSendFields []string `json:"-"`
   554  
   555  	// NullFields is a list of field names (e.g. "NextPageToken") to include
   556  	// in API requests with the JSON null value. By default, fields with
   557  	// empty values are omitted from API requests. However, any field with
   558  	// an empty value appearing in NullFields will be sent to the server as
   559  	// null. It is an error if a field in this list has a non-empty value.
   560  	// This may be used to include null fields in Patch requests.
   561  	NullFields []string `json:"-"`
   562  }
   563  
   564  func (s *GoogleCloudDatacatalogLineageV1ListRunsResponse) MarshalJSON() ([]byte, error) {
   565  	type NoMethod GoogleCloudDatacatalogLineageV1ListRunsResponse
   566  	raw := NoMethod(*s)
   567  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   568  }
   569  
   570  // GoogleCloudDatacatalogLineageV1OperationMetadata: Metadata describing
   571  // the operation.
   572  type GoogleCloudDatacatalogLineageV1OperationMetadata struct {
   573  	// CreateTime: Output only. The timestamp of the operation submission to
   574  	// the server.
   575  	CreateTime string `json:"createTime,omitempty"`
   576  
   577  	// EndTime: Output only. The timestamp of the operation termination,
   578  	// regardless of its success. This field is unset if the operation is
   579  	// still ongoing.
   580  	EndTime string `json:"endTime,omitempty"`
   581  
   582  	// OperationType: Output only. The type of the operation being
   583  	// performed.
   584  	//
   585  	// Possible values:
   586  	//   "TYPE_UNSPECIFIED" - Unused.
   587  	//   "DELETE" - The resource deletion operation.
   588  	//   "CREATE" - The resource creation operation.
   589  	OperationType string `json:"operationType,omitempty"`
   590  
   591  	// Resource: Output only. The [relative name]
   592  	// (https://cloud.google.com//apis/design/resource_names#relative_resource_name)
   593  	// of the resource being operated on.
   594  	Resource string `json:"resource,omitempty"`
   595  
   596  	// ResourceUuid: Output only. The UUID of the resource being operated
   597  	// on.
   598  	ResourceUuid string `json:"resourceUuid,omitempty"`
   599  
   600  	// State: Output only. The current operation state.
   601  	//
   602  	// Possible values:
   603  	//   "STATE_UNSPECIFIED" - Unused.
   604  	//   "PENDING" - The operation has been created but is not yet started.
   605  	//   "RUNNING" - The operation is underway.
   606  	//   "SUCCEEDED" - The operation completed successfully.
   607  	//   "FAILED" - The operation is no longer running and did not succeed.
   608  	State string `json:"state,omitempty"`
   609  
   610  	// ForceSendFields is a list of field names (e.g. "CreateTime") to
   611  	// unconditionally include in API requests. By default, fields with
   612  	// empty or default values are omitted from API requests. However, any
   613  	// non-pointer, non-interface field appearing in ForceSendFields will be
   614  	// sent to the server regardless of whether the field is empty or not.
   615  	// This may be used to include empty fields in Patch requests.
   616  	ForceSendFields []string `json:"-"`
   617  
   618  	// NullFields is a list of field names (e.g. "CreateTime") to include in
   619  	// API requests with the JSON null value. By default, fields with empty
   620  	// values are omitted from API requests. However, any field with an
   621  	// empty value appearing in NullFields will be sent to the server as
   622  	// null. It is an error if a field in this list has a non-empty value.
   623  	// This may be used to include null fields in Patch requests.
   624  	NullFields []string `json:"-"`
   625  }
   626  
   627  func (s *GoogleCloudDatacatalogLineageV1OperationMetadata) MarshalJSON() ([]byte, error) {
   628  	type NoMethod GoogleCloudDatacatalogLineageV1OperationMetadata
   629  	raw := NoMethod(*s)
   630  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   631  }
   632  
   633  // GoogleCloudDatacatalogLineageV1Origin: Origin of a process.
   634  type GoogleCloudDatacatalogLineageV1Origin struct {
   635  	// Name: If the source_type isn't CUSTOM, the value of this field should
   636  	// be a GCP resource name of the system, which reports lineage. The
   637  	// project and location parts of the resource name must match the
   638  	// project and location of the lineage resource being created. Examples:
   639  	// - `{source_type: COMPOSER, name:
   640  	// "projects/foo/locations/us/environments/bar"}` - `{source_type:
   641  	// BIGQUERY, name: "projects/foo/locations/eu"}` - `{source_type:
   642  	// CUSTOM, name: "myCustomIntegration"}`
   643  	Name string `json:"name,omitempty"`
   644  
   645  	// SourceType: Type of the source. Use of a source_type other than
   646  	// `CUSTOM` for process creation or updating is highly discouraged, and
   647  	// may be restricted in the future without notice.
   648  	//
   649  	// Possible values:
   650  	//   "SOURCE_TYPE_UNSPECIFIED" - Source is Unspecified
   651  	//   "CUSTOM" - A custom source
   652  	//   "BIGQUERY" - BigQuery
   653  	//   "DATA_FUSION" - Data Fusion
   654  	//   "COMPOSER" - Composer
   655  	//   "LOOKER_STUDIO" - Looker Studio
   656  	//   "DATAPROC" - Dataproc
   657  	SourceType string `json:"sourceType,omitempty"`
   658  
   659  	// ForceSendFields is a list of field names (e.g. "Name") to
   660  	// unconditionally include in API requests. By default, fields with
   661  	// empty or default values are omitted from API requests. However, any
   662  	// non-pointer, non-interface field appearing in ForceSendFields will be
   663  	// sent to the server regardless of whether the field is empty or not.
   664  	// This may be used to include empty fields in Patch requests.
   665  	ForceSendFields []string `json:"-"`
   666  
   667  	// NullFields is a list of field names (e.g. "Name") to include in API
   668  	// requests with the JSON null value. By default, fields with empty
   669  	// values are omitted from API requests. However, any field with an
   670  	// empty value appearing in NullFields will be sent to the server as
   671  	// null. It is an error if a field in this list has a non-empty value.
   672  	// This may be used to include null fields in Patch requests.
   673  	NullFields []string `json:"-"`
   674  }
   675  
   676  func (s *GoogleCloudDatacatalogLineageV1Origin) MarshalJSON() ([]byte, error) {
   677  	type NoMethod GoogleCloudDatacatalogLineageV1Origin
   678  	raw := NoMethod(*s)
   679  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   680  }
   681  
   682  // GoogleCloudDatacatalogLineageV1Process: A process is the definition
   683  // of a data transformation operation.
   684  type GoogleCloudDatacatalogLineageV1Process struct {
   685  	// Attributes: Optional. The attributes of the process. Should only be
   686  	// used for the purpose of non-semantic management (classifying,
   687  	// describing or labeling the process). Up to 100 attributes are
   688  	// allowed.
   689  	Attributes googleapi.RawMessage `json:"attributes,omitempty"`
   690  
   691  	// DisplayName: Optional. A human-readable name you can set to display
   692  	// in a user interface. Must be not longer than 200 characters and only
   693  	// contain UTF-8 letters or numbers, spaces or characters like `_-:&.`
   694  	DisplayName string `json:"displayName,omitempty"`
   695  
   696  	// Name: Immutable. The resource name of the lineage process. Format:
   697  	// `projects/{project}/locations/{location}/processes/{process}`. Can be
   698  	// specified or auto-assigned. {process} must be not longer than 200
   699  	// characters and only contain characters in a set: `a-zA-Z0-9_-:.`
   700  	Name string `json:"name,omitempty"`
   701  
   702  	// Origin: Optional. The origin of this process and its runs and lineage
   703  	// events.
   704  	Origin *GoogleCloudDatacatalogLineageV1Origin `json:"origin,omitempty"`
   705  
   706  	// ServerResponse contains the HTTP response code and headers from the
   707  	// server.
   708  	googleapi.ServerResponse `json:"-"`
   709  
   710  	// ForceSendFields is a list of field names (e.g. "Attributes") to
   711  	// unconditionally include in API requests. By default, fields with
   712  	// empty or default values are omitted from API requests. However, any
   713  	// non-pointer, non-interface field appearing in ForceSendFields will be
   714  	// sent to the server regardless of whether the field is empty or not.
   715  	// This may be used to include empty fields in Patch requests.
   716  	ForceSendFields []string `json:"-"`
   717  
   718  	// NullFields is a list of field names (e.g. "Attributes") to include in
   719  	// API requests with the JSON null value. By default, fields with empty
   720  	// values are omitted from API requests. However, any field with an
   721  	// empty value appearing in NullFields will be sent to the server as
   722  	// null. It is an error if a field in this list has a non-empty value.
   723  	// This may be used to include null fields in Patch requests.
   724  	NullFields []string `json:"-"`
   725  }
   726  
   727  func (s *GoogleCloudDatacatalogLineageV1Process) MarshalJSON() ([]byte, error) {
   728  	type NoMethod GoogleCloudDatacatalogLineageV1Process
   729  	raw := NoMethod(*s)
   730  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   731  }
   732  
   733  // GoogleCloudDatacatalogLineageV1ProcessLinkInfo: Link details.
   734  type GoogleCloudDatacatalogLineageV1ProcessLinkInfo struct {
   735  	// EndTime: The end of the last event establishing this link-process
   736  	// tuple.
   737  	EndTime string `json:"endTime,omitempty"`
   738  
   739  	// Link: The name of the link in the format of
   740  	// `projects/{project}/locations/{location}/links/{link}`.
   741  	Link string `json:"link,omitempty"`
   742  
   743  	// StartTime: The start of the first event establishing this
   744  	// link-process tuple.
   745  	StartTime string `json:"startTime,omitempty"`
   746  
   747  	// ForceSendFields is a list of field names (e.g. "EndTime") to
   748  	// unconditionally include in API requests. By default, fields with
   749  	// empty or default values are omitted from API requests. However, any
   750  	// non-pointer, non-interface field appearing in ForceSendFields will be
   751  	// sent to the server regardless of whether the field is empty or not.
   752  	// This may be used to include empty fields in Patch requests.
   753  	ForceSendFields []string `json:"-"`
   754  
   755  	// NullFields is a list of field names (e.g. "EndTime") to include in
   756  	// API requests with the JSON null value. By default, fields with empty
   757  	// values are omitted from API requests. However, any field with an
   758  	// empty value appearing in NullFields will be sent to the server as
   759  	// null. It is an error if a field in this list has a non-empty value.
   760  	// This may be used to include null fields in Patch requests.
   761  	NullFields []string `json:"-"`
   762  }
   763  
   764  func (s *GoogleCloudDatacatalogLineageV1ProcessLinkInfo) MarshalJSON() ([]byte, error) {
   765  	type NoMethod GoogleCloudDatacatalogLineageV1ProcessLinkInfo
   766  	raw := NoMethod(*s)
   767  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   768  }
   769  
   770  // GoogleCloudDatacatalogLineageV1ProcessLinks: Links associated with a
   771  // specific process.
   772  type GoogleCloudDatacatalogLineageV1ProcessLinks struct {
   773  	// Links: An array containing link details objects of the links provided
   774  	// in the original request. A single process can result in creating
   775  	// multiple links. If any of the links you provide in the request are
   776  	// created by the same process, they all are included in this array.
   777  	Links []*GoogleCloudDatacatalogLineageV1ProcessLinkInfo `json:"links,omitempty"`
   778  
   779  	// Process: The process name in the format of
   780  	// `projects/{project}/locations/{location}/processes/{process}`.
   781  	Process string `json:"process,omitempty"`
   782  
   783  	// ForceSendFields is a list of field names (e.g. "Links") to
   784  	// unconditionally include in API requests. By default, fields with
   785  	// empty or default values are omitted from API requests. However, any
   786  	// non-pointer, non-interface field appearing in ForceSendFields will be
   787  	// sent to the server regardless of whether the field is empty or not.
   788  	// This may be used to include empty fields in Patch requests.
   789  	ForceSendFields []string `json:"-"`
   790  
   791  	// NullFields is a list of field names (e.g. "Links") to include in API
   792  	// requests with the JSON null value. By default, fields with empty
   793  	// values are omitted from API requests. However, any field with an
   794  	// empty value appearing in NullFields will be sent to the server as
   795  	// null. It is an error if a field in this list has a non-empty value.
   796  	// This may be used to include null fields in Patch requests.
   797  	NullFields []string `json:"-"`
   798  }
   799  
   800  func (s *GoogleCloudDatacatalogLineageV1ProcessLinks) MarshalJSON() ([]byte, error) {
   801  	type NoMethod GoogleCloudDatacatalogLineageV1ProcessLinks
   802  	raw := NoMethod(*s)
   803  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   804  }
   805  
   806  // GoogleCloudDatacatalogLineageV1Run: A lineage run represents an
   807  // execution of a process that creates lineage events.
   808  type GoogleCloudDatacatalogLineageV1Run struct {
   809  	// Attributes: Optional. The attributes of the run. Should only be used
   810  	// for the purpose of non-semantic management (classifying, describing
   811  	// or labeling the run). Up to 100 attributes are allowed.
   812  	Attributes googleapi.RawMessage `json:"attributes,omitempty"`
   813  
   814  	// DisplayName: Optional. A human-readable name you can set to display
   815  	// in a user interface. Must be not longer than 1024 characters and only
   816  	// contain UTF-8 letters or numbers, spaces or characters like `_-:&.`
   817  	DisplayName string `json:"displayName,omitempty"`
   818  
   819  	// EndTime: Optional. The timestamp of the end of the run.
   820  	EndTime string `json:"endTime,omitempty"`
   821  
   822  	// Name: Immutable. The resource name of the run. Format:
   823  	// `projects/{project}/locations/{location}/processes/{process}/runs/{run
   824  	// }`. Can be specified or auto-assigned. {run} must be not longer than
   825  	// 200 characters and only contain characters in a set: `a-zA-Z0-9_-:.`
   826  	Name string `json:"name,omitempty"`
   827  
   828  	// StartTime: Required. The timestamp of the start of the run.
   829  	StartTime string `json:"startTime,omitempty"`
   830  
   831  	// State: Required. The state of the run.
   832  	//
   833  	// Possible values:
   834  	//   "UNKNOWN" - The state is unknown. The true state may be any of the
   835  	// below or a different state that is not supported here explicitly.
   836  	//   "STARTED" - The run is still executing.
   837  	//   "COMPLETED" - The run completed.
   838  	//   "FAILED" - The run failed.
   839  	//   "ABORTED" - The run aborted.
   840  	State string `json:"state,omitempty"`
   841  
   842  	// ServerResponse contains the HTTP response code and headers from the
   843  	// server.
   844  	googleapi.ServerResponse `json:"-"`
   845  
   846  	// ForceSendFields is a list of field names (e.g. "Attributes") to
   847  	// unconditionally include in API requests. By default, fields with
   848  	// empty or default values are omitted from API requests. However, any
   849  	// non-pointer, non-interface field appearing in ForceSendFields will be
   850  	// sent to the server regardless of whether the field is empty or not.
   851  	// This may be used to include empty fields in Patch requests.
   852  	ForceSendFields []string `json:"-"`
   853  
   854  	// NullFields is a list of field names (e.g. "Attributes") to include in
   855  	// API requests with the JSON null value. By default, fields with empty
   856  	// values are omitted from API requests. However, any field with an
   857  	// empty value appearing in NullFields will be sent to the server as
   858  	// null. It is an error if a field in this list has a non-empty value.
   859  	// This may be used to include null fields in Patch requests.
   860  	NullFields []string `json:"-"`
   861  }
   862  
   863  func (s *GoogleCloudDatacatalogLineageV1Run) MarshalJSON() ([]byte, error) {
   864  	type NoMethod GoogleCloudDatacatalogLineageV1Run
   865  	raw := NoMethod(*s)
   866  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   867  }
   868  
   869  // GoogleCloudDatacatalogLineageV1SearchLinksRequest: Request message
   870  // for SearchLinks.
   871  type GoogleCloudDatacatalogLineageV1SearchLinksRequest struct {
   872  	// PageSize: Optional. The maximum number of links to return in a single
   873  	// page of the response. A page may contain fewer links than this value.
   874  	// If unspecified, at most 10 links are returned. Maximum value is 100;
   875  	// values greater than 100 are reduced to 100.
   876  	PageSize int64 `json:"pageSize,omitempty"`
   877  
   878  	// PageToken: Optional. The page token received from a previous
   879  	// `SearchLinksRequest` call. Use it to get the next page. When
   880  	// requesting subsequent pages of a response, remember that all
   881  	// parameters must match the values you provided in the original
   882  	// request.
   883  	PageToken string `json:"pageToken,omitempty"`
   884  
   885  	// Source: Optional. Send asset information in the **source** field to
   886  	// retrieve all links that lead from the specified asset to downstream
   887  	// assets.
   888  	Source *GoogleCloudDatacatalogLineageV1EntityReference `json:"source,omitempty"`
   889  
   890  	// Target: Optional. Send asset information in the **target** field to
   891  	// retrieve all links that lead from upstream assets to the specified
   892  	// asset.
   893  	Target *GoogleCloudDatacatalogLineageV1EntityReference `json:"target,omitempty"`
   894  
   895  	// ForceSendFields is a list of field names (e.g. "PageSize") to
   896  	// unconditionally include in API requests. By default, fields with
   897  	// empty or default values are omitted from API requests. However, any
   898  	// non-pointer, non-interface field appearing in ForceSendFields will be
   899  	// sent to the server regardless of whether the field is empty or not.
   900  	// This may be used to include empty fields in Patch requests.
   901  	ForceSendFields []string `json:"-"`
   902  
   903  	// NullFields is a list of field names (e.g. "PageSize") to include in
   904  	// API requests with the JSON null value. By default, fields with empty
   905  	// values are omitted from API requests. However, any field with an
   906  	// empty value appearing in NullFields will be sent to the server as
   907  	// null. It is an error if a field in this list has a non-empty value.
   908  	// This may be used to include null fields in Patch requests.
   909  	NullFields []string `json:"-"`
   910  }
   911  
   912  func (s *GoogleCloudDatacatalogLineageV1SearchLinksRequest) MarshalJSON() ([]byte, error) {
   913  	type NoMethod GoogleCloudDatacatalogLineageV1SearchLinksRequest
   914  	raw := NoMethod(*s)
   915  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   916  }
   917  
   918  // GoogleCloudDatacatalogLineageV1SearchLinksResponse: Response message
   919  // for SearchLinks.
   920  type GoogleCloudDatacatalogLineageV1SearchLinksResponse struct {
   921  	// Links: The list of links for a given asset. Can be empty if the asset
   922  	// has no relations of requested type (source or target).
   923  	Links []*GoogleCloudDatacatalogLineageV1Link `json:"links,omitempty"`
   924  
   925  	// NextPageToken: The token to specify as `page_token` in the subsequent
   926  	// call to get the next page. Omitted if there are no more pages in the
   927  	// response.
   928  	NextPageToken string `json:"nextPageToken,omitempty"`
   929  
   930  	// ServerResponse contains the HTTP response code and headers from the
   931  	// server.
   932  	googleapi.ServerResponse `json:"-"`
   933  
   934  	// ForceSendFields is a list of field names (e.g. "Links") to
   935  	// unconditionally include in API requests. By default, fields with
   936  	// empty or default values are omitted from API requests. However, any
   937  	// non-pointer, non-interface field appearing in ForceSendFields will be
   938  	// sent to the server regardless of whether the field is empty or not.
   939  	// This may be used to include empty fields in Patch requests.
   940  	ForceSendFields []string `json:"-"`
   941  
   942  	// NullFields is a list of field names (e.g. "Links") to include in API
   943  	// requests with the JSON null value. By default, fields with empty
   944  	// values are omitted from API requests. However, any field with an
   945  	// empty value appearing in NullFields will be sent to the server as
   946  	// null. It is an error if a field in this list has a non-empty value.
   947  	// This may be used to include null fields in Patch requests.
   948  	NullFields []string `json:"-"`
   949  }
   950  
   951  func (s *GoogleCloudDatacatalogLineageV1SearchLinksResponse) MarshalJSON() ([]byte, error) {
   952  	type NoMethod GoogleCloudDatacatalogLineageV1SearchLinksResponse
   953  	raw := NoMethod(*s)
   954  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   955  }
   956  
   957  // GoogleLongrunningCancelOperationRequest: The request message for
   958  // Operations.CancelOperation.
   959  type GoogleLongrunningCancelOperationRequest struct {
   960  }
   961  
   962  // GoogleLongrunningListOperationsResponse: The response message for
   963  // Operations.ListOperations.
   964  type GoogleLongrunningListOperationsResponse struct {
   965  	// NextPageToken: The standard List next-page token.
   966  	NextPageToken string `json:"nextPageToken,omitempty"`
   967  
   968  	// Operations: A list of operations that matches the specified filter in
   969  	// the request.
   970  	Operations []*GoogleLongrunningOperation `json:"operations,omitempty"`
   971  
   972  	// ServerResponse contains the HTTP response code and headers from the
   973  	// server.
   974  	googleapi.ServerResponse `json:"-"`
   975  
   976  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
   977  	// unconditionally include in API requests. By default, fields with
   978  	// empty or default values are omitted from API requests. However, any
   979  	// non-pointer, non-interface field appearing in ForceSendFields will be
   980  	// sent to the server regardless of whether the field is empty or not.
   981  	// This may be used to include empty fields in Patch requests.
   982  	ForceSendFields []string `json:"-"`
   983  
   984  	// NullFields is a list of field names (e.g. "NextPageToken") to include
   985  	// in API requests with the JSON null value. By default, fields with
   986  	// empty values are omitted from API requests. However, any field with
   987  	// an empty value appearing in NullFields will be sent to the server as
   988  	// null. It is an error if a field in this list has a non-empty value.
   989  	// This may be used to include null fields in Patch requests.
   990  	NullFields []string `json:"-"`
   991  }
   992  
   993  func (s *GoogleLongrunningListOperationsResponse) MarshalJSON() ([]byte, error) {
   994  	type NoMethod GoogleLongrunningListOperationsResponse
   995  	raw := NoMethod(*s)
   996  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   997  }
   998  
   999  // GoogleLongrunningOperation: This resource represents a long-running
  1000  // operation that is the result of a network API call.
  1001  type GoogleLongrunningOperation struct {
  1002  	// Done: If the value is `false`, it means the operation is still in
  1003  	// progress. If `true`, the operation is completed, and either `error`
  1004  	// or `response` is available.
  1005  	Done bool `json:"done,omitempty"`
  1006  
  1007  	// Error: The error result of the operation in case of failure or
  1008  	// cancellation.
  1009  	Error *GoogleRpcStatus `json:"error,omitempty"`
  1010  
  1011  	// Metadata: Service-specific metadata associated with the operation. It
  1012  	// typically contains progress information and common metadata such as
  1013  	// create time. Some services might not provide such metadata. Any
  1014  	// method that returns a long-running operation should document the
  1015  	// metadata type, if any.
  1016  	Metadata googleapi.RawMessage `json:"metadata,omitempty"`
  1017  
  1018  	// Name: The server-assigned name, which is only unique within the same
  1019  	// service that originally returns it. If you use the default HTTP
  1020  	// mapping, the `name` should be a resource name ending with
  1021  	// `operations/{unique_id}`.
  1022  	Name string `json:"name,omitempty"`
  1023  
  1024  	// Response: The normal response of the operation in case of success. If
  1025  	// the original method returns no data on success, such as `Delete`, the
  1026  	// response is `google.protobuf.Empty`. If the original method is
  1027  	// standard `Get`/`Create`/`Update`, the response should be the
  1028  	// resource. For other methods, the response should have the type
  1029  	// `XxxResponse`, where `Xxx` is the original method name. For example,
  1030  	// if the original method name is `TakeSnapshot()`, the inferred
  1031  	// response type is `TakeSnapshotResponse`.
  1032  	Response googleapi.RawMessage `json:"response,omitempty"`
  1033  
  1034  	// ServerResponse contains the HTTP response code and headers from the
  1035  	// server.
  1036  	googleapi.ServerResponse `json:"-"`
  1037  
  1038  	// ForceSendFields is a list of field names (e.g. "Done") to
  1039  	// unconditionally include in API requests. By default, fields with
  1040  	// empty or default values are omitted from API requests. However, any
  1041  	// non-pointer, non-interface field appearing in ForceSendFields will be
  1042  	// sent to the server regardless of whether the field is empty or not.
  1043  	// This may be used to include empty fields in Patch requests.
  1044  	ForceSendFields []string `json:"-"`
  1045  
  1046  	// NullFields is a list of field names (e.g. "Done") to include in API
  1047  	// requests with the JSON null value. By default, fields with empty
  1048  	// values are omitted from API requests. However, any field with an
  1049  	// empty value appearing in NullFields will be sent to the server as
  1050  	// null. It is an error if a field in this list has a non-empty value.
  1051  	// This may be used to include null fields in Patch requests.
  1052  	NullFields []string `json:"-"`
  1053  }
  1054  
  1055  func (s *GoogleLongrunningOperation) MarshalJSON() ([]byte, error) {
  1056  	type NoMethod GoogleLongrunningOperation
  1057  	raw := NoMethod(*s)
  1058  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1059  }
  1060  
  1061  // GoogleProtobufEmpty: A generic empty message that you can re-use to
  1062  // avoid defining duplicated empty messages in your APIs. A typical
  1063  // example is to use it as the request or the response type of an API
  1064  // method. For instance: service Foo { rpc Bar(google.protobuf.Empty)
  1065  // returns (google.protobuf.Empty); }
  1066  type GoogleProtobufEmpty struct {
  1067  	// ServerResponse contains the HTTP response code and headers from the
  1068  	// server.
  1069  	googleapi.ServerResponse `json:"-"`
  1070  }
  1071  
  1072  // GoogleRpcStatus: The `Status` type defines a logical error model that
  1073  // is suitable for different programming environments, including REST
  1074  // APIs and RPC APIs. It is used by gRPC (https://github.com/grpc). Each
  1075  // `Status` message contains three pieces of data: error code, error
  1076  // message, and error details. You can find out more about this error
  1077  // model and how to work with it in the API Design Guide
  1078  // (https://cloud.google.com/apis/design/errors).
  1079  type GoogleRpcStatus struct {
  1080  	// Code: The status code, which should be an enum value of
  1081  	// google.rpc.Code.
  1082  	Code int64 `json:"code,omitempty"`
  1083  
  1084  	// Details: A list of messages that carry the error details. There is a
  1085  	// common set of message types for APIs to use.
  1086  	Details []googleapi.RawMessage `json:"details,omitempty"`
  1087  
  1088  	// Message: A developer-facing error message, which should be in
  1089  	// English. Any user-facing error message should be localized and sent
  1090  	// in the google.rpc.Status.details field, or localized by the client.
  1091  	Message string `json:"message,omitempty"`
  1092  
  1093  	// ForceSendFields is a list of field names (e.g. "Code") to
  1094  	// unconditionally include in API requests. By default, fields with
  1095  	// empty or default values are omitted from API requests. However, any
  1096  	// non-pointer, non-interface field appearing in ForceSendFields will be
  1097  	// sent to the server regardless of whether the field is empty or not.
  1098  	// This may be used to include empty fields in Patch requests.
  1099  	ForceSendFields []string `json:"-"`
  1100  
  1101  	// NullFields is a list of field names (e.g. "Code") to include in API
  1102  	// requests with the JSON null value. By default, fields with empty
  1103  	// values are omitted from API requests. However, any field with an
  1104  	// empty value appearing in NullFields will be sent to the server as
  1105  	// null. It is an error if a field in this list has a non-empty value.
  1106  	// This may be used to include null fields in Patch requests.
  1107  	NullFields []string `json:"-"`
  1108  }
  1109  
  1110  func (s *GoogleRpcStatus) MarshalJSON() ([]byte, error) {
  1111  	type NoMethod GoogleRpcStatus
  1112  	raw := NoMethod(*s)
  1113  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1114  }
  1115  
  1116  // method id "datalineage.projects.locations.batchSearchLinkProcesses":
  1117  
  1118  type ProjectsLocationsBatchSearchLinkProcessesCall struct {
  1119  	s                                                              *Service
  1120  	parent                                                         string
  1121  	googleclouddatacataloglineagev1batchsearchlinkprocessesrequest *GoogleCloudDatacatalogLineageV1BatchSearchLinkProcessesRequest
  1122  	urlParams_                                                     gensupport.URLParams
  1123  	ctx_                                                           context.Context
  1124  	header_                                                        http.Header
  1125  }
  1126  
  1127  // BatchSearchLinkProcesses: Retrieve information about LineageProcesses
  1128  // associated with specific links. LineageProcesses are transformation
  1129  // pipelines that result in data flowing from **source** to **target**
  1130  // assets. Links between assets represent this operation. If you have
  1131  // specific link names, you can use this method to verify which
  1132  // LineageProcesses contribute to creating those links. See the
  1133  // SearchLinks method for more information on how to retrieve link name.
  1134  // You can retrieve the LineageProcess information in every project
  1135  // where you have the `datalineage.events.get` permission. The project
  1136  // provided in the URL is used for Billing and Quota.
  1137  //
  1138  // - parent: The project and location where you want to search.
  1139  func (r *ProjectsLocationsService) BatchSearchLinkProcesses(parent string, googleclouddatacataloglineagev1batchsearchlinkprocessesrequest *GoogleCloudDatacatalogLineageV1BatchSearchLinkProcessesRequest) *ProjectsLocationsBatchSearchLinkProcessesCall {
  1140  	c := &ProjectsLocationsBatchSearchLinkProcessesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  1141  	c.parent = parent
  1142  	c.googleclouddatacataloglineagev1batchsearchlinkprocessesrequest = googleclouddatacataloglineagev1batchsearchlinkprocessesrequest
  1143  	return c
  1144  }
  1145  
  1146  // Fields allows partial responses to be retrieved. See
  1147  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
  1148  // for more information.
  1149  func (c *ProjectsLocationsBatchSearchLinkProcessesCall) Fields(s ...googleapi.Field) *ProjectsLocationsBatchSearchLinkProcessesCall {
  1150  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  1151  	return c
  1152  }
  1153  
  1154  // Context sets the context to be used in this call's Do method. Any
  1155  // pending HTTP request will be aborted if the provided context is
  1156  // canceled.
  1157  func (c *ProjectsLocationsBatchSearchLinkProcessesCall) Context(ctx context.Context) *ProjectsLocationsBatchSearchLinkProcessesCall {
  1158  	c.ctx_ = ctx
  1159  	return c
  1160  }
  1161  
  1162  // Header returns an http.Header that can be modified by the caller to
  1163  // add HTTP headers to the request.
  1164  func (c *ProjectsLocationsBatchSearchLinkProcessesCall) Header() http.Header {
  1165  	if c.header_ == nil {
  1166  		c.header_ = make(http.Header)
  1167  	}
  1168  	return c.header_
  1169  }
  1170  
  1171  func (c *ProjectsLocationsBatchSearchLinkProcessesCall) doRequest(alt string) (*http.Response, error) {
  1172  	reqHeaders := make(http.Header)
  1173  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
  1174  	for k, v := range c.header_ {
  1175  		reqHeaders[k] = v
  1176  	}
  1177  	reqHeaders.Set("User-Agent", c.s.userAgent())
  1178  	var body io.Reader = nil
  1179  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddatacataloglineagev1batchsearchlinkprocessesrequest)
  1180  	if err != nil {
  1181  		return nil, err
  1182  	}
  1183  	reqHeaders.Set("Content-Type", "application/json")
  1184  	c.urlParams_.Set("alt", alt)
  1185  	c.urlParams_.Set("prettyPrint", "false")
  1186  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}:batchSearchLinkProcesses")
  1187  	urls += "?" + c.urlParams_.Encode()
  1188  	req, err := http.NewRequest("POST", urls, body)
  1189  	if err != nil {
  1190  		return nil, err
  1191  	}
  1192  	req.Header = reqHeaders
  1193  	googleapi.Expand(req.URL, map[string]string{
  1194  		"parent": c.parent,
  1195  	})
  1196  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  1197  }
  1198  
  1199  // Do executes the "datalineage.projects.locations.batchSearchLinkProcesses" call.
  1200  // Exactly one of
  1201  // *GoogleCloudDatacatalogLineageV1BatchSearchLinkProcessesResponse or
  1202  // error will be non-nil. Any non-2xx status code is an error. Response
  1203  // headers are in either
  1204  // *GoogleCloudDatacatalogLineageV1BatchSearchLinkProcessesResponse.Serve
  1205  // rResponse.Header or (if a response was returned at all) in
  1206  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  1207  // whether the returned error was because http.StatusNotModified was
  1208  // returned.
  1209  func (c *ProjectsLocationsBatchSearchLinkProcessesCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogLineageV1BatchSearchLinkProcessesResponse, error) {
  1210  	gensupport.SetOptions(c.urlParams_, opts...)
  1211  	res, err := c.doRequest("json")
  1212  	if res != nil && res.StatusCode == http.StatusNotModified {
  1213  		if res.Body != nil {
  1214  			res.Body.Close()
  1215  		}
  1216  		return nil, gensupport.WrapError(&googleapi.Error{
  1217  			Code:   res.StatusCode,
  1218  			Header: res.Header,
  1219  		})
  1220  	}
  1221  	if err != nil {
  1222  		return nil, err
  1223  	}
  1224  	defer googleapi.CloseBody(res)
  1225  	if err := googleapi.CheckResponse(res); err != nil {
  1226  		return nil, gensupport.WrapError(err)
  1227  	}
  1228  	ret := &GoogleCloudDatacatalogLineageV1BatchSearchLinkProcessesResponse{
  1229  		ServerResponse: googleapi.ServerResponse{
  1230  			Header:         res.Header,
  1231  			HTTPStatusCode: res.StatusCode,
  1232  		},
  1233  	}
  1234  	target := &ret
  1235  	if err := gensupport.DecodeResponse(target, res); err != nil {
  1236  		return nil, err
  1237  	}
  1238  	return ret, nil
  1239  	// {
  1240  	//   "description": "Retrieve information about LineageProcesses associated with specific links. LineageProcesses are transformation pipelines that result in data flowing from **source** to **target** assets. Links between assets represent this operation. If you have specific link names, you can use this method to verify which LineageProcesses contribute to creating those links. See the SearchLinks method for more information on how to retrieve link name. You can retrieve the LineageProcess information in every project where you have the `datalineage.events.get` permission. The project provided in the URL is used for Billing and Quota.",
  1241  	//   "flatPath": "v1/projects/{projectsId}/locations/{locationsId}:batchSearchLinkProcesses",
  1242  	//   "httpMethod": "POST",
  1243  	//   "id": "datalineage.projects.locations.batchSearchLinkProcesses",
  1244  	//   "parameterOrder": [
  1245  	//     "parent"
  1246  	//   ],
  1247  	//   "parameters": {
  1248  	//     "parent": {
  1249  	//       "description": "Required. The project and location where you want to search.",
  1250  	//       "location": "path",
  1251  	//       "pattern": "^projects/[^/]+/locations/[^/]+$",
  1252  	//       "required": true,
  1253  	//       "type": "string"
  1254  	//     }
  1255  	//   },
  1256  	//   "path": "v1/{+parent}:batchSearchLinkProcesses",
  1257  	//   "request": {
  1258  	//     "$ref": "GoogleCloudDatacatalogLineageV1BatchSearchLinkProcessesRequest"
  1259  	//   },
  1260  	//   "response": {
  1261  	//     "$ref": "GoogleCloudDatacatalogLineageV1BatchSearchLinkProcessesResponse"
  1262  	//   },
  1263  	//   "scopes": [
  1264  	//     "https://www.googleapis.com/auth/cloud-platform"
  1265  	//   ]
  1266  	// }
  1267  
  1268  }
  1269  
  1270  // Pages invokes f for each page of results.
  1271  // A non-nil error returned from f will halt the iteration.
  1272  // The provided context supersedes any context provided to the Context method.
  1273  func (c *ProjectsLocationsBatchSearchLinkProcessesCall) Pages(ctx context.Context, f func(*GoogleCloudDatacatalogLineageV1BatchSearchLinkProcessesResponse) error) error {
  1274  	c.ctx_ = ctx
  1275  	defer func(pt string) { c.googleclouddatacataloglineagev1batchsearchlinkprocessesrequest.PageToken = pt }(c.googleclouddatacataloglineagev1batchsearchlinkprocessesrequest.PageToken) // reset paging to original point
  1276  	for {
  1277  		x, err := c.Do()
  1278  		if err != nil {
  1279  			return err
  1280  		}
  1281  		if err := f(x); err != nil {
  1282  			return err
  1283  		}
  1284  		if x.NextPageToken == "" {
  1285  			return nil
  1286  		}
  1287  		c.googleclouddatacataloglineagev1batchsearchlinkprocessesrequest.PageToken = x.NextPageToken
  1288  	}
  1289  }
  1290  
  1291  // method id "datalineage.projects.locations.searchLinks":
  1292  
  1293  type ProjectsLocationsSearchLinksCall struct {
  1294  	s                                                 *Service
  1295  	parent                                            string
  1296  	googleclouddatacataloglineagev1searchlinksrequest *GoogleCloudDatacatalogLineageV1SearchLinksRequest
  1297  	urlParams_                                        gensupport.URLParams
  1298  	ctx_                                              context.Context
  1299  	header_                                           http.Header
  1300  }
  1301  
  1302  // SearchLinks: Retrieve a list of links connected to a specific asset.
  1303  // Links represent the data flow between **source** (upstream) and
  1304  // **target** (downstream) assets in transformation pipelines. Links are
  1305  // stored in the same project as the Lineage Events that create them.
  1306  // You can retrieve links in every project where you have the
  1307  // `datalineage.events.get` permission. The project provided in the URL
  1308  // is used for Billing and Quota.
  1309  //
  1310  // - parent: The project and location you want search in.
  1311  func (r *ProjectsLocationsService) SearchLinks(parent string, googleclouddatacataloglineagev1searchlinksrequest *GoogleCloudDatacatalogLineageV1SearchLinksRequest) *ProjectsLocationsSearchLinksCall {
  1312  	c := &ProjectsLocationsSearchLinksCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  1313  	c.parent = parent
  1314  	c.googleclouddatacataloglineagev1searchlinksrequest = googleclouddatacataloglineagev1searchlinksrequest
  1315  	return c
  1316  }
  1317  
  1318  // Fields allows partial responses to be retrieved. See
  1319  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
  1320  // for more information.
  1321  func (c *ProjectsLocationsSearchLinksCall) Fields(s ...googleapi.Field) *ProjectsLocationsSearchLinksCall {
  1322  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  1323  	return c
  1324  }
  1325  
  1326  // Context sets the context to be used in this call's Do method. Any
  1327  // pending HTTP request will be aborted if the provided context is
  1328  // canceled.
  1329  func (c *ProjectsLocationsSearchLinksCall) Context(ctx context.Context) *ProjectsLocationsSearchLinksCall {
  1330  	c.ctx_ = ctx
  1331  	return c
  1332  }
  1333  
  1334  // Header returns an http.Header that can be modified by the caller to
  1335  // add HTTP headers to the request.
  1336  func (c *ProjectsLocationsSearchLinksCall) Header() http.Header {
  1337  	if c.header_ == nil {
  1338  		c.header_ = make(http.Header)
  1339  	}
  1340  	return c.header_
  1341  }
  1342  
  1343  func (c *ProjectsLocationsSearchLinksCall) doRequest(alt string) (*http.Response, error) {
  1344  	reqHeaders := make(http.Header)
  1345  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
  1346  	for k, v := range c.header_ {
  1347  		reqHeaders[k] = v
  1348  	}
  1349  	reqHeaders.Set("User-Agent", c.s.userAgent())
  1350  	var body io.Reader = nil
  1351  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddatacataloglineagev1searchlinksrequest)
  1352  	if err != nil {
  1353  		return nil, err
  1354  	}
  1355  	reqHeaders.Set("Content-Type", "application/json")
  1356  	c.urlParams_.Set("alt", alt)
  1357  	c.urlParams_.Set("prettyPrint", "false")
  1358  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}:searchLinks")
  1359  	urls += "?" + c.urlParams_.Encode()
  1360  	req, err := http.NewRequest("POST", urls, body)
  1361  	if err != nil {
  1362  		return nil, err
  1363  	}
  1364  	req.Header = reqHeaders
  1365  	googleapi.Expand(req.URL, map[string]string{
  1366  		"parent": c.parent,
  1367  	})
  1368  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  1369  }
  1370  
  1371  // Do executes the "datalineage.projects.locations.searchLinks" call.
  1372  // Exactly one of *GoogleCloudDatacatalogLineageV1SearchLinksResponse or
  1373  // error will be non-nil. Any non-2xx status code is an error. Response
  1374  // headers are in either
  1375  // *GoogleCloudDatacatalogLineageV1SearchLinksResponse.ServerResponse.Hea
  1376  // der or (if a response was returned at all) in
  1377  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  1378  // whether the returned error was because http.StatusNotModified was
  1379  // returned.
  1380  func (c *ProjectsLocationsSearchLinksCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogLineageV1SearchLinksResponse, error) {
  1381  	gensupport.SetOptions(c.urlParams_, opts...)
  1382  	res, err := c.doRequest("json")
  1383  	if res != nil && res.StatusCode == http.StatusNotModified {
  1384  		if res.Body != nil {
  1385  			res.Body.Close()
  1386  		}
  1387  		return nil, gensupport.WrapError(&googleapi.Error{
  1388  			Code:   res.StatusCode,
  1389  			Header: res.Header,
  1390  		})
  1391  	}
  1392  	if err != nil {
  1393  		return nil, err
  1394  	}
  1395  	defer googleapi.CloseBody(res)
  1396  	if err := googleapi.CheckResponse(res); err != nil {
  1397  		return nil, gensupport.WrapError(err)
  1398  	}
  1399  	ret := &GoogleCloudDatacatalogLineageV1SearchLinksResponse{
  1400  		ServerResponse: googleapi.ServerResponse{
  1401  			Header:         res.Header,
  1402  			HTTPStatusCode: res.StatusCode,
  1403  		},
  1404  	}
  1405  	target := &ret
  1406  	if err := gensupport.DecodeResponse(target, res); err != nil {
  1407  		return nil, err
  1408  	}
  1409  	return ret, nil
  1410  	// {
  1411  	//   "description": "Retrieve a list of links connected to a specific asset. Links represent the data flow between **source** (upstream) and **target** (downstream) assets in transformation pipelines. Links are stored in the same project as the Lineage Events that create them. You can retrieve links in every project where you have the `datalineage.events.get` permission. The project provided in the URL is used for Billing and Quota.",
  1412  	//   "flatPath": "v1/projects/{projectsId}/locations/{locationsId}:searchLinks",
  1413  	//   "httpMethod": "POST",
  1414  	//   "id": "datalineage.projects.locations.searchLinks",
  1415  	//   "parameterOrder": [
  1416  	//     "parent"
  1417  	//   ],
  1418  	//   "parameters": {
  1419  	//     "parent": {
  1420  	//       "description": "Required. The project and location you want search in.",
  1421  	//       "location": "path",
  1422  	//       "pattern": "^projects/[^/]+/locations/[^/]+$",
  1423  	//       "required": true,
  1424  	//       "type": "string"
  1425  	//     }
  1426  	//   },
  1427  	//   "path": "v1/{+parent}:searchLinks",
  1428  	//   "request": {
  1429  	//     "$ref": "GoogleCloudDatacatalogLineageV1SearchLinksRequest"
  1430  	//   },
  1431  	//   "response": {
  1432  	//     "$ref": "GoogleCloudDatacatalogLineageV1SearchLinksResponse"
  1433  	//   },
  1434  	//   "scopes": [
  1435  	//     "https://www.googleapis.com/auth/cloud-platform"
  1436  	//   ]
  1437  	// }
  1438  
  1439  }
  1440  
  1441  // Pages invokes f for each page of results.
  1442  // A non-nil error returned from f will halt the iteration.
  1443  // The provided context supersedes any context provided to the Context method.
  1444  func (c *ProjectsLocationsSearchLinksCall) Pages(ctx context.Context, f func(*GoogleCloudDatacatalogLineageV1SearchLinksResponse) error) error {
  1445  	c.ctx_ = ctx
  1446  	defer func(pt string) { c.googleclouddatacataloglineagev1searchlinksrequest.PageToken = pt }(c.googleclouddatacataloglineagev1searchlinksrequest.PageToken) // reset paging to original point
  1447  	for {
  1448  		x, err := c.Do()
  1449  		if err != nil {
  1450  			return err
  1451  		}
  1452  		if err := f(x); err != nil {
  1453  			return err
  1454  		}
  1455  		if x.NextPageToken == "" {
  1456  			return nil
  1457  		}
  1458  		c.googleclouddatacataloglineagev1searchlinksrequest.PageToken = x.NextPageToken
  1459  	}
  1460  }
  1461  
  1462  // method id "datalineage.projects.locations.operations.cancel":
  1463  
  1464  type ProjectsLocationsOperationsCancelCall struct {
  1465  	s                                       *Service
  1466  	name                                    string
  1467  	googlelongrunningcanceloperationrequest *GoogleLongrunningCancelOperationRequest
  1468  	urlParams_                              gensupport.URLParams
  1469  	ctx_                                    context.Context
  1470  	header_                                 http.Header
  1471  }
  1472  
  1473  // Cancel: Starts asynchronous cancellation on a long-running operation.
  1474  // The server makes a best effort to cancel the operation, but success
  1475  // is not guaranteed. If the server doesn't support this method, it
  1476  // returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use
  1477  // Operations.GetOperation or other methods to check whether the
  1478  // cancellation succeeded or whether the operation completed despite
  1479  // cancellation. On successful cancellation, the operation is not
  1480  // deleted; instead, it becomes an operation with an Operation.error
  1481  // value with a google.rpc.Status.code of 1, corresponding to
  1482  // `Code.CANCELLED`.
  1483  //
  1484  // - name: The name of the operation resource to be cancelled.
  1485  func (r *ProjectsLocationsOperationsService) Cancel(name string, googlelongrunningcanceloperationrequest *GoogleLongrunningCancelOperationRequest) *ProjectsLocationsOperationsCancelCall {
  1486  	c := &ProjectsLocationsOperationsCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  1487  	c.name = name
  1488  	c.googlelongrunningcanceloperationrequest = googlelongrunningcanceloperationrequest
  1489  	return c
  1490  }
  1491  
  1492  // Fields allows partial responses to be retrieved. See
  1493  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
  1494  // for more information.
  1495  func (c *ProjectsLocationsOperationsCancelCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsCancelCall {
  1496  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  1497  	return c
  1498  }
  1499  
  1500  // Context sets the context to be used in this call's Do method. Any
  1501  // pending HTTP request will be aborted if the provided context is
  1502  // canceled.
  1503  func (c *ProjectsLocationsOperationsCancelCall) Context(ctx context.Context) *ProjectsLocationsOperationsCancelCall {
  1504  	c.ctx_ = ctx
  1505  	return c
  1506  }
  1507  
  1508  // Header returns an http.Header that can be modified by the caller to
  1509  // add HTTP headers to the request.
  1510  func (c *ProjectsLocationsOperationsCancelCall) Header() http.Header {
  1511  	if c.header_ == nil {
  1512  		c.header_ = make(http.Header)
  1513  	}
  1514  	return c.header_
  1515  }
  1516  
  1517  func (c *ProjectsLocationsOperationsCancelCall) doRequest(alt string) (*http.Response, error) {
  1518  	reqHeaders := make(http.Header)
  1519  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
  1520  	for k, v := range c.header_ {
  1521  		reqHeaders[k] = v
  1522  	}
  1523  	reqHeaders.Set("User-Agent", c.s.userAgent())
  1524  	var body io.Reader = nil
  1525  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlelongrunningcanceloperationrequest)
  1526  	if err != nil {
  1527  		return nil, err
  1528  	}
  1529  	reqHeaders.Set("Content-Type", "application/json")
  1530  	c.urlParams_.Set("alt", alt)
  1531  	c.urlParams_.Set("prettyPrint", "false")
  1532  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:cancel")
  1533  	urls += "?" + c.urlParams_.Encode()
  1534  	req, err := http.NewRequest("POST", urls, body)
  1535  	if err != nil {
  1536  		return nil, err
  1537  	}
  1538  	req.Header = reqHeaders
  1539  	googleapi.Expand(req.URL, map[string]string{
  1540  		"name": c.name,
  1541  	})
  1542  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  1543  }
  1544  
  1545  // Do executes the "datalineage.projects.locations.operations.cancel" call.
  1546  // Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
  1547  // non-2xx status code is an error. Response headers are in either
  1548  // *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
  1549  // returned at all) in error.(*googleapi.Error).Header. Use
  1550  // googleapi.IsNotModified to check whether the returned error was
  1551  // because http.StatusNotModified was returned.
  1552  func (c *ProjectsLocationsOperationsCancelCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
  1553  	gensupport.SetOptions(c.urlParams_, opts...)
  1554  	res, err := c.doRequest("json")
  1555  	if res != nil && res.StatusCode == http.StatusNotModified {
  1556  		if res.Body != nil {
  1557  			res.Body.Close()
  1558  		}
  1559  		return nil, gensupport.WrapError(&googleapi.Error{
  1560  			Code:   res.StatusCode,
  1561  			Header: res.Header,
  1562  		})
  1563  	}
  1564  	if err != nil {
  1565  		return nil, err
  1566  	}
  1567  	defer googleapi.CloseBody(res)
  1568  	if err := googleapi.CheckResponse(res); err != nil {
  1569  		return nil, gensupport.WrapError(err)
  1570  	}
  1571  	ret := &GoogleProtobufEmpty{
  1572  		ServerResponse: googleapi.ServerResponse{
  1573  			Header:         res.Header,
  1574  			HTTPStatusCode: res.StatusCode,
  1575  		},
  1576  	}
  1577  	target := &ret
  1578  	if err := gensupport.DecodeResponse(target, res); err != nil {
  1579  		return nil, err
  1580  	}
  1581  	return ret, nil
  1582  	// {
  1583  	//   "description": "Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`.",
  1584  	//   "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:cancel",
  1585  	//   "httpMethod": "POST",
  1586  	//   "id": "datalineage.projects.locations.operations.cancel",
  1587  	//   "parameterOrder": [
  1588  	//     "name"
  1589  	//   ],
  1590  	//   "parameters": {
  1591  	//     "name": {
  1592  	//       "description": "The name of the operation resource to be cancelled.",
  1593  	//       "location": "path",
  1594  	//       "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$",
  1595  	//       "required": true,
  1596  	//       "type": "string"
  1597  	//     }
  1598  	//   },
  1599  	//   "path": "v1/{+name}:cancel",
  1600  	//   "request": {
  1601  	//     "$ref": "GoogleLongrunningCancelOperationRequest"
  1602  	//   },
  1603  	//   "response": {
  1604  	//     "$ref": "GoogleProtobufEmpty"
  1605  	//   },
  1606  	//   "scopes": [
  1607  	//     "https://www.googleapis.com/auth/cloud-platform"
  1608  	//   ]
  1609  	// }
  1610  
  1611  }
  1612  
  1613  // method id "datalineage.projects.locations.operations.delete":
  1614  
  1615  type ProjectsLocationsOperationsDeleteCall struct {
  1616  	s          *Service
  1617  	name       string
  1618  	urlParams_ gensupport.URLParams
  1619  	ctx_       context.Context
  1620  	header_    http.Header
  1621  }
  1622  
  1623  // Delete: Deletes a long-running operation. This method indicates that
  1624  // the client is no longer interested in the operation result. It does
  1625  // not cancel the operation. If the server doesn't support this method,
  1626  // it returns `google.rpc.Code.UNIMPLEMENTED`.
  1627  //
  1628  // - name: The name of the operation resource to be deleted.
  1629  func (r *ProjectsLocationsOperationsService) Delete(name string) *ProjectsLocationsOperationsDeleteCall {
  1630  	c := &ProjectsLocationsOperationsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  1631  	c.name = name
  1632  	return c
  1633  }
  1634  
  1635  // Fields allows partial responses to be retrieved. See
  1636  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
  1637  // for more information.
  1638  func (c *ProjectsLocationsOperationsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsDeleteCall {
  1639  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  1640  	return c
  1641  }
  1642  
  1643  // Context sets the context to be used in this call's Do method. Any
  1644  // pending HTTP request will be aborted if the provided context is
  1645  // canceled.
  1646  func (c *ProjectsLocationsOperationsDeleteCall) Context(ctx context.Context) *ProjectsLocationsOperationsDeleteCall {
  1647  	c.ctx_ = ctx
  1648  	return c
  1649  }
  1650  
  1651  // Header returns an http.Header that can be modified by the caller to
  1652  // add HTTP headers to the request.
  1653  func (c *ProjectsLocationsOperationsDeleteCall) Header() http.Header {
  1654  	if c.header_ == nil {
  1655  		c.header_ = make(http.Header)
  1656  	}
  1657  	return c.header_
  1658  }
  1659  
  1660  func (c *ProjectsLocationsOperationsDeleteCall) doRequest(alt string) (*http.Response, error) {
  1661  	reqHeaders := make(http.Header)
  1662  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
  1663  	for k, v := range c.header_ {
  1664  		reqHeaders[k] = v
  1665  	}
  1666  	reqHeaders.Set("User-Agent", c.s.userAgent())
  1667  	var body io.Reader = nil
  1668  	c.urlParams_.Set("alt", alt)
  1669  	c.urlParams_.Set("prettyPrint", "false")
  1670  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  1671  	urls += "?" + c.urlParams_.Encode()
  1672  	req, err := http.NewRequest("DELETE", urls, body)
  1673  	if err != nil {
  1674  		return nil, err
  1675  	}
  1676  	req.Header = reqHeaders
  1677  	googleapi.Expand(req.URL, map[string]string{
  1678  		"name": c.name,
  1679  	})
  1680  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  1681  }
  1682  
  1683  // Do executes the "datalineage.projects.locations.operations.delete" call.
  1684  // Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
  1685  // non-2xx status code is an error. Response headers are in either
  1686  // *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
  1687  // returned at all) in error.(*googleapi.Error).Header. Use
  1688  // googleapi.IsNotModified to check whether the returned error was
  1689  // because http.StatusNotModified was returned.
  1690  func (c *ProjectsLocationsOperationsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
  1691  	gensupport.SetOptions(c.urlParams_, opts...)
  1692  	res, err := c.doRequest("json")
  1693  	if res != nil && res.StatusCode == http.StatusNotModified {
  1694  		if res.Body != nil {
  1695  			res.Body.Close()
  1696  		}
  1697  		return nil, gensupport.WrapError(&googleapi.Error{
  1698  			Code:   res.StatusCode,
  1699  			Header: res.Header,
  1700  		})
  1701  	}
  1702  	if err != nil {
  1703  		return nil, err
  1704  	}
  1705  	defer googleapi.CloseBody(res)
  1706  	if err := googleapi.CheckResponse(res); err != nil {
  1707  		return nil, gensupport.WrapError(err)
  1708  	}
  1709  	ret := &GoogleProtobufEmpty{
  1710  		ServerResponse: googleapi.ServerResponse{
  1711  			Header:         res.Header,
  1712  			HTTPStatusCode: res.StatusCode,
  1713  		},
  1714  	}
  1715  	target := &ret
  1716  	if err := gensupport.DecodeResponse(target, res); err != nil {
  1717  		return nil, err
  1718  	}
  1719  	return ret, nil
  1720  	// {
  1721  	//   "description": "Deletes a long-running operation. This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`.",
  1722  	//   "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}",
  1723  	//   "httpMethod": "DELETE",
  1724  	//   "id": "datalineage.projects.locations.operations.delete",
  1725  	//   "parameterOrder": [
  1726  	//     "name"
  1727  	//   ],
  1728  	//   "parameters": {
  1729  	//     "name": {
  1730  	//       "description": "The name of the operation resource to be deleted.",
  1731  	//       "location": "path",
  1732  	//       "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$",
  1733  	//       "required": true,
  1734  	//       "type": "string"
  1735  	//     }
  1736  	//   },
  1737  	//   "path": "v1/{+name}",
  1738  	//   "response": {
  1739  	//     "$ref": "GoogleProtobufEmpty"
  1740  	//   },
  1741  	//   "scopes": [
  1742  	//     "https://www.googleapis.com/auth/cloud-platform"
  1743  	//   ]
  1744  	// }
  1745  
  1746  }
  1747  
  1748  // method id "datalineage.projects.locations.operations.get":
  1749  
  1750  type ProjectsLocationsOperationsGetCall struct {
  1751  	s            *Service
  1752  	name         string
  1753  	urlParams_   gensupport.URLParams
  1754  	ifNoneMatch_ string
  1755  	ctx_         context.Context
  1756  	header_      http.Header
  1757  }
  1758  
  1759  // Get: Gets the latest state of a long-running operation. Clients can
  1760  // use this method to poll the operation result at intervals as
  1761  // recommended by the API service.
  1762  //
  1763  // - name: The name of the operation resource.
  1764  func (r *ProjectsLocationsOperationsService) Get(name string) *ProjectsLocationsOperationsGetCall {
  1765  	c := &ProjectsLocationsOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  1766  	c.name = name
  1767  	return c
  1768  }
  1769  
  1770  // Fields allows partial responses to be retrieved. See
  1771  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
  1772  // for more information.
  1773  func (c *ProjectsLocationsOperationsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsGetCall {
  1774  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  1775  	return c
  1776  }
  1777  
  1778  // IfNoneMatch sets the optional parameter which makes the operation
  1779  // fail if the object's ETag matches the given value. This is useful for
  1780  // getting updates only after the object has changed since the last
  1781  // request. Use googleapi.IsNotModified to check whether the response
  1782  // error from Do is the result of In-None-Match.
  1783  func (c *ProjectsLocationsOperationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsOperationsGetCall {
  1784  	c.ifNoneMatch_ = entityTag
  1785  	return c
  1786  }
  1787  
  1788  // Context sets the context to be used in this call's Do method. Any
  1789  // pending HTTP request will be aborted if the provided context is
  1790  // canceled.
  1791  func (c *ProjectsLocationsOperationsGetCall) Context(ctx context.Context) *ProjectsLocationsOperationsGetCall {
  1792  	c.ctx_ = ctx
  1793  	return c
  1794  }
  1795  
  1796  // Header returns an http.Header that can be modified by the caller to
  1797  // add HTTP headers to the request.
  1798  func (c *ProjectsLocationsOperationsGetCall) Header() http.Header {
  1799  	if c.header_ == nil {
  1800  		c.header_ = make(http.Header)
  1801  	}
  1802  	return c.header_
  1803  }
  1804  
  1805  func (c *ProjectsLocationsOperationsGetCall) doRequest(alt string) (*http.Response, error) {
  1806  	reqHeaders := make(http.Header)
  1807  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
  1808  	for k, v := range c.header_ {
  1809  		reqHeaders[k] = v
  1810  	}
  1811  	reqHeaders.Set("User-Agent", c.s.userAgent())
  1812  	if c.ifNoneMatch_ != "" {
  1813  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  1814  	}
  1815  	var body io.Reader = nil
  1816  	c.urlParams_.Set("alt", alt)
  1817  	c.urlParams_.Set("prettyPrint", "false")
  1818  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  1819  	urls += "?" + c.urlParams_.Encode()
  1820  	req, err := http.NewRequest("GET", urls, body)
  1821  	if err != nil {
  1822  		return nil, err
  1823  	}
  1824  	req.Header = reqHeaders
  1825  	googleapi.Expand(req.URL, map[string]string{
  1826  		"name": c.name,
  1827  	})
  1828  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  1829  }
  1830  
  1831  // Do executes the "datalineage.projects.locations.operations.get" call.
  1832  // Exactly one of *GoogleLongrunningOperation or error will be non-nil.
  1833  // Any non-2xx status code is an error. Response headers are in either
  1834  // *GoogleLongrunningOperation.ServerResponse.Header or (if a response
  1835  // was returned at all) in error.(*googleapi.Error).Header. Use
  1836  // googleapi.IsNotModified to check whether the returned error was
  1837  // because http.StatusNotModified was returned.
  1838  func (c *ProjectsLocationsOperationsGetCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
  1839  	gensupport.SetOptions(c.urlParams_, opts...)
  1840  	res, err := c.doRequest("json")
  1841  	if res != nil && res.StatusCode == http.StatusNotModified {
  1842  		if res.Body != nil {
  1843  			res.Body.Close()
  1844  		}
  1845  		return nil, gensupport.WrapError(&googleapi.Error{
  1846  			Code:   res.StatusCode,
  1847  			Header: res.Header,
  1848  		})
  1849  	}
  1850  	if err != nil {
  1851  		return nil, err
  1852  	}
  1853  	defer googleapi.CloseBody(res)
  1854  	if err := googleapi.CheckResponse(res); err != nil {
  1855  		return nil, gensupport.WrapError(err)
  1856  	}
  1857  	ret := &GoogleLongrunningOperation{
  1858  		ServerResponse: googleapi.ServerResponse{
  1859  			Header:         res.Header,
  1860  			HTTPStatusCode: res.StatusCode,
  1861  		},
  1862  	}
  1863  	target := &ret
  1864  	if err := gensupport.DecodeResponse(target, res); err != nil {
  1865  		return nil, err
  1866  	}
  1867  	return ret, nil
  1868  	// {
  1869  	//   "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.",
  1870  	//   "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}",
  1871  	//   "httpMethod": "GET",
  1872  	//   "id": "datalineage.projects.locations.operations.get",
  1873  	//   "parameterOrder": [
  1874  	//     "name"
  1875  	//   ],
  1876  	//   "parameters": {
  1877  	//     "name": {
  1878  	//       "description": "The name of the operation resource.",
  1879  	//       "location": "path",
  1880  	//       "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$",
  1881  	//       "required": true,
  1882  	//       "type": "string"
  1883  	//     }
  1884  	//   },
  1885  	//   "path": "v1/{+name}",
  1886  	//   "response": {
  1887  	//     "$ref": "GoogleLongrunningOperation"
  1888  	//   },
  1889  	//   "scopes": [
  1890  	//     "https://www.googleapis.com/auth/cloud-platform"
  1891  	//   ]
  1892  	// }
  1893  
  1894  }
  1895  
  1896  // method id "datalineage.projects.locations.operations.list":
  1897  
  1898  type ProjectsLocationsOperationsListCall struct {
  1899  	s            *Service
  1900  	name         string
  1901  	urlParams_   gensupport.URLParams
  1902  	ifNoneMatch_ string
  1903  	ctx_         context.Context
  1904  	header_      http.Header
  1905  }
  1906  
  1907  // List: Lists operations that match the specified filter in the
  1908  // request. If the server doesn't support this method, it returns
  1909  // `UNIMPLEMENTED`.
  1910  //
  1911  // - name: The name of the operation's parent resource.
  1912  func (r *ProjectsLocationsOperationsService) List(name string) *ProjectsLocationsOperationsListCall {
  1913  	c := &ProjectsLocationsOperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  1914  	c.name = name
  1915  	return c
  1916  }
  1917  
  1918  // Filter sets the optional parameter "filter": The standard list
  1919  // filter.
  1920  func (c *ProjectsLocationsOperationsListCall) Filter(filter string) *ProjectsLocationsOperationsListCall {
  1921  	c.urlParams_.Set("filter", filter)
  1922  	return c
  1923  }
  1924  
  1925  // PageSize sets the optional parameter "pageSize": The standard list
  1926  // page size.
  1927  func (c *ProjectsLocationsOperationsListCall) PageSize(pageSize int64) *ProjectsLocationsOperationsListCall {
  1928  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  1929  	return c
  1930  }
  1931  
  1932  // PageToken sets the optional parameter "pageToken": The standard list
  1933  // page token.
  1934  func (c *ProjectsLocationsOperationsListCall) PageToken(pageToken string) *ProjectsLocationsOperationsListCall {
  1935  	c.urlParams_.Set("pageToken", pageToken)
  1936  	return c
  1937  }
  1938  
  1939  // Fields allows partial responses to be retrieved. See
  1940  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
  1941  // for more information.
  1942  func (c *ProjectsLocationsOperationsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsListCall {
  1943  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  1944  	return c
  1945  }
  1946  
  1947  // IfNoneMatch sets the optional parameter which makes the operation
  1948  // fail if the object's ETag matches the given value. This is useful for
  1949  // getting updates only after the object has changed since the last
  1950  // request. Use googleapi.IsNotModified to check whether the response
  1951  // error from Do is the result of In-None-Match.
  1952  func (c *ProjectsLocationsOperationsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsOperationsListCall {
  1953  	c.ifNoneMatch_ = entityTag
  1954  	return c
  1955  }
  1956  
  1957  // Context sets the context to be used in this call's Do method. Any
  1958  // pending HTTP request will be aborted if the provided context is
  1959  // canceled.
  1960  func (c *ProjectsLocationsOperationsListCall) Context(ctx context.Context) *ProjectsLocationsOperationsListCall {
  1961  	c.ctx_ = ctx
  1962  	return c
  1963  }
  1964  
  1965  // Header returns an http.Header that can be modified by the caller to
  1966  // add HTTP headers to the request.
  1967  func (c *ProjectsLocationsOperationsListCall) Header() http.Header {
  1968  	if c.header_ == nil {
  1969  		c.header_ = make(http.Header)
  1970  	}
  1971  	return c.header_
  1972  }
  1973  
  1974  func (c *ProjectsLocationsOperationsListCall) doRequest(alt string) (*http.Response, error) {
  1975  	reqHeaders := make(http.Header)
  1976  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
  1977  	for k, v := range c.header_ {
  1978  		reqHeaders[k] = v
  1979  	}
  1980  	reqHeaders.Set("User-Agent", c.s.userAgent())
  1981  	if c.ifNoneMatch_ != "" {
  1982  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  1983  	}
  1984  	var body io.Reader = nil
  1985  	c.urlParams_.Set("alt", alt)
  1986  	c.urlParams_.Set("prettyPrint", "false")
  1987  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}/operations")
  1988  	urls += "?" + c.urlParams_.Encode()
  1989  	req, err := http.NewRequest("GET", urls, body)
  1990  	if err != nil {
  1991  		return nil, err
  1992  	}
  1993  	req.Header = reqHeaders
  1994  	googleapi.Expand(req.URL, map[string]string{
  1995  		"name": c.name,
  1996  	})
  1997  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  1998  }
  1999  
  2000  // Do executes the "datalineage.projects.locations.operations.list" call.
  2001  // Exactly one of *GoogleLongrunningListOperationsResponse or error will
  2002  // be non-nil. Any non-2xx status code is an error. Response headers are
  2003  // in either
  2004  // *GoogleLongrunningListOperationsResponse.ServerResponse.Header or (if
  2005  // a response was returned at all) in error.(*googleapi.Error).Header.
  2006  // Use googleapi.IsNotModified to check whether the returned error was
  2007  // because http.StatusNotModified was returned.
  2008  func (c *ProjectsLocationsOperationsListCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningListOperationsResponse, error) {
  2009  	gensupport.SetOptions(c.urlParams_, opts...)
  2010  	res, err := c.doRequest("json")
  2011  	if res != nil && res.StatusCode == http.StatusNotModified {
  2012  		if res.Body != nil {
  2013  			res.Body.Close()
  2014  		}
  2015  		return nil, gensupport.WrapError(&googleapi.Error{
  2016  			Code:   res.StatusCode,
  2017  			Header: res.Header,
  2018  		})
  2019  	}
  2020  	if err != nil {
  2021  		return nil, err
  2022  	}
  2023  	defer googleapi.CloseBody(res)
  2024  	if err := googleapi.CheckResponse(res); err != nil {
  2025  		return nil, gensupport.WrapError(err)
  2026  	}
  2027  	ret := &GoogleLongrunningListOperationsResponse{
  2028  		ServerResponse: googleapi.ServerResponse{
  2029  			Header:         res.Header,
  2030  			HTTPStatusCode: res.StatusCode,
  2031  		},
  2032  	}
  2033  	target := &ret
  2034  	if err := gensupport.DecodeResponse(target, res); err != nil {
  2035  		return nil, err
  2036  	}
  2037  	return ret, nil
  2038  	// {
  2039  	//   "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`.",
  2040  	//   "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations",
  2041  	//   "httpMethod": "GET",
  2042  	//   "id": "datalineage.projects.locations.operations.list",
  2043  	//   "parameterOrder": [
  2044  	//     "name"
  2045  	//   ],
  2046  	//   "parameters": {
  2047  	//     "filter": {
  2048  	//       "description": "The standard list filter.",
  2049  	//       "location": "query",
  2050  	//       "type": "string"
  2051  	//     },
  2052  	//     "name": {
  2053  	//       "description": "The name of the operation's parent resource.",
  2054  	//       "location": "path",
  2055  	//       "pattern": "^projects/[^/]+/locations/[^/]+$",
  2056  	//       "required": true,
  2057  	//       "type": "string"
  2058  	//     },
  2059  	//     "pageSize": {
  2060  	//       "description": "The standard list page size.",
  2061  	//       "format": "int32",
  2062  	//       "location": "query",
  2063  	//       "type": "integer"
  2064  	//     },
  2065  	//     "pageToken": {
  2066  	//       "description": "The standard list page token.",
  2067  	//       "location": "query",
  2068  	//       "type": "string"
  2069  	//     }
  2070  	//   },
  2071  	//   "path": "v1/{+name}/operations",
  2072  	//   "response": {
  2073  	//     "$ref": "GoogleLongrunningListOperationsResponse"
  2074  	//   },
  2075  	//   "scopes": [
  2076  	//     "https://www.googleapis.com/auth/cloud-platform"
  2077  	//   ]
  2078  	// }
  2079  
  2080  }
  2081  
  2082  // Pages invokes f for each page of results.
  2083  // A non-nil error returned from f will halt the iteration.
  2084  // The provided context supersedes any context provided to the Context method.
  2085  func (c *ProjectsLocationsOperationsListCall) Pages(ctx context.Context, f func(*GoogleLongrunningListOperationsResponse) error) error {
  2086  	c.ctx_ = ctx
  2087  	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
  2088  	for {
  2089  		x, err := c.Do()
  2090  		if err != nil {
  2091  			return err
  2092  		}
  2093  		if err := f(x); err != nil {
  2094  			return err
  2095  		}
  2096  		if x.NextPageToken == "" {
  2097  			return nil
  2098  		}
  2099  		c.PageToken(x.NextPageToken)
  2100  	}
  2101  }
  2102  
  2103  // method id "datalineage.projects.locations.processes.create":
  2104  
  2105  type ProjectsLocationsProcessesCreateCall struct {
  2106  	s                                      *Service
  2107  	parent                                 string
  2108  	googleclouddatacataloglineagev1process *GoogleCloudDatacatalogLineageV1Process
  2109  	urlParams_                             gensupport.URLParams
  2110  	ctx_                                   context.Context
  2111  	header_                                http.Header
  2112  }
  2113  
  2114  // Create: Creates a new process.
  2115  //
  2116  //   - parent: The name of the project and its location that should own
  2117  //     the process.
  2118  func (r *ProjectsLocationsProcessesService) Create(parent string, googleclouddatacataloglineagev1process *GoogleCloudDatacatalogLineageV1Process) *ProjectsLocationsProcessesCreateCall {
  2119  	c := &ProjectsLocationsProcessesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  2120  	c.parent = parent
  2121  	c.googleclouddatacataloglineagev1process = googleclouddatacataloglineagev1process
  2122  	return c
  2123  }
  2124  
  2125  // RequestId sets the optional parameter "requestId": A unique
  2126  // identifier for this request. Restricted to 36 ASCII characters. A
  2127  // random UUID is recommended. This request is idempotent only if a
  2128  // `request_id` is provided.
  2129  func (c *ProjectsLocationsProcessesCreateCall) RequestId(requestId string) *ProjectsLocationsProcessesCreateCall {
  2130  	c.urlParams_.Set("requestId", requestId)
  2131  	return c
  2132  }
  2133  
  2134  // Fields allows partial responses to be retrieved. See
  2135  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
  2136  // for more information.
  2137  func (c *ProjectsLocationsProcessesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsProcessesCreateCall {
  2138  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  2139  	return c
  2140  }
  2141  
  2142  // Context sets the context to be used in this call's Do method. Any
  2143  // pending HTTP request will be aborted if the provided context is
  2144  // canceled.
  2145  func (c *ProjectsLocationsProcessesCreateCall) Context(ctx context.Context) *ProjectsLocationsProcessesCreateCall {
  2146  	c.ctx_ = ctx
  2147  	return c
  2148  }
  2149  
  2150  // Header returns an http.Header that can be modified by the caller to
  2151  // add HTTP headers to the request.
  2152  func (c *ProjectsLocationsProcessesCreateCall) Header() http.Header {
  2153  	if c.header_ == nil {
  2154  		c.header_ = make(http.Header)
  2155  	}
  2156  	return c.header_
  2157  }
  2158  
  2159  func (c *ProjectsLocationsProcessesCreateCall) doRequest(alt string) (*http.Response, error) {
  2160  	reqHeaders := make(http.Header)
  2161  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
  2162  	for k, v := range c.header_ {
  2163  		reqHeaders[k] = v
  2164  	}
  2165  	reqHeaders.Set("User-Agent", c.s.userAgent())
  2166  	var body io.Reader = nil
  2167  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddatacataloglineagev1process)
  2168  	if err != nil {
  2169  		return nil, err
  2170  	}
  2171  	reqHeaders.Set("Content-Type", "application/json")
  2172  	c.urlParams_.Set("alt", alt)
  2173  	c.urlParams_.Set("prettyPrint", "false")
  2174  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/processes")
  2175  	urls += "?" + c.urlParams_.Encode()
  2176  	req, err := http.NewRequest("POST", urls, body)
  2177  	if err != nil {
  2178  		return nil, err
  2179  	}
  2180  	req.Header = reqHeaders
  2181  	googleapi.Expand(req.URL, map[string]string{
  2182  		"parent": c.parent,
  2183  	})
  2184  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  2185  }
  2186  
  2187  // Do executes the "datalineage.projects.locations.processes.create" call.
  2188  // Exactly one of *GoogleCloudDatacatalogLineageV1Process or error will
  2189  // be non-nil. Any non-2xx status code is an error. Response headers are
  2190  // in either
  2191  // *GoogleCloudDatacatalogLineageV1Process.ServerResponse.Header or (if
  2192  // a response was returned at all) in error.(*googleapi.Error).Header.
  2193  // Use googleapi.IsNotModified to check whether the returned error was
  2194  // because http.StatusNotModified was returned.
  2195  func (c *ProjectsLocationsProcessesCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogLineageV1Process, error) {
  2196  	gensupport.SetOptions(c.urlParams_, opts...)
  2197  	res, err := c.doRequest("json")
  2198  	if res != nil && res.StatusCode == http.StatusNotModified {
  2199  		if res.Body != nil {
  2200  			res.Body.Close()
  2201  		}
  2202  		return nil, gensupport.WrapError(&googleapi.Error{
  2203  			Code:   res.StatusCode,
  2204  			Header: res.Header,
  2205  		})
  2206  	}
  2207  	if err != nil {
  2208  		return nil, err
  2209  	}
  2210  	defer googleapi.CloseBody(res)
  2211  	if err := googleapi.CheckResponse(res); err != nil {
  2212  		return nil, gensupport.WrapError(err)
  2213  	}
  2214  	ret := &GoogleCloudDatacatalogLineageV1Process{
  2215  		ServerResponse: googleapi.ServerResponse{
  2216  			Header:         res.Header,
  2217  			HTTPStatusCode: res.StatusCode,
  2218  		},
  2219  	}
  2220  	target := &ret
  2221  	if err := gensupport.DecodeResponse(target, res); err != nil {
  2222  		return nil, err
  2223  	}
  2224  	return ret, nil
  2225  	// {
  2226  	//   "description": "Creates a new process.",
  2227  	//   "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/processes",
  2228  	//   "httpMethod": "POST",
  2229  	//   "id": "datalineage.projects.locations.processes.create",
  2230  	//   "parameterOrder": [
  2231  	//     "parent"
  2232  	//   ],
  2233  	//   "parameters": {
  2234  	//     "parent": {
  2235  	//       "description": "Required. The name of the project and its location that should own the process.",
  2236  	//       "location": "path",
  2237  	//       "pattern": "^projects/[^/]+/locations/[^/]+$",
  2238  	//       "required": true,
  2239  	//       "type": "string"
  2240  	//     },
  2241  	//     "requestId": {
  2242  	//       "description": "A unique identifier for this request. Restricted to 36 ASCII characters. A random UUID is recommended. This request is idempotent only if a `request_id` is provided.",
  2243  	//       "location": "query",
  2244  	//       "type": "string"
  2245  	//     }
  2246  	//   },
  2247  	//   "path": "v1/{+parent}/processes",
  2248  	//   "request": {
  2249  	//     "$ref": "GoogleCloudDatacatalogLineageV1Process"
  2250  	//   },
  2251  	//   "response": {
  2252  	//     "$ref": "GoogleCloudDatacatalogLineageV1Process"
  2253  	//   },
  2254  	//   "scopes": [
  2255  	//     "https://www.googleapis.com/auth/cloud-platform"
  2256  	//   ]
  2257  	// }
  2258  
  2259  }
  2260  
  2261  // method id "datalineage.projects.locations.processes.delete":
  2262  
  2263  type ProjectsLocationsProcessesDeleteCall struct {
  2264  	s          *Service
  2265  	name       string
  2266  	urlParams_ gensupport.URLParams
  2267  	ctx_       context.Context
  2268  	header_    http.Header
  2269  }
  2270  
  2271  // Delete: Deletes the process with the specified name.
  2272  //
  2273  // - name: The name of the process to delete.
  2274  func (r *ProjectsLocationsProcessesService) Delete(name string) *ProjectsLocationsProcessesDeleteCall {
  2275  	c := &ProjectsLocationsProcessesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  2276  	c.name = name
  2277  	return c
  2278  }
  2279  
  2280  // AllowMissing sets the optional parameter "allowMissing": If set to
  2281  // true and the process is not found, the request succeeds but the
  2282  // server doesn't perform any actions.
  2283  func (c *ProjectsLocationsProcessesDeleteCall) AllowMissing(allowMissing bool) *ProjectsLocationsProcessesDeleteCall {
  2284  	c.urlParams_.Set("allowMissing", fmt.Sprint(allowMissing))
  2285  	return c
  2286  }
  2287  
  2288  // Fields allows partial responses to be retrieved. See
  2289  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
  2290  // for more information.
  2291  func (c *ProjectsLocationsProcessesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsProcessesDeleteCall {
  2292  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  2293  	return c
  2294  }
  2295  
  2296  // Context sets the context to be used in this call's Do method. Any
  2297  // pending HTTP request will be aborted if the provided context is
  2298  // canceled.
  2299  func (c *ProjectsLocationsProcessesDeleteCall) Context(ctx context.Context) *ProjectsLocationsProcessesDeleteCall {
  2300  	c.ctx_ = ctx
  2301  	return c
  2302  }
  2303  
  2304  // Header returns an http.Header that can be modified by the caller to
  2305  // add HTTP headers to the request.
  2306  func (c *ProjectsLocationsProcessesDeleteCall) Header() http.Header {
  2307  	if c.header_ == nil {
  2308  		c.header_ = make(http.Header)
  2309  	}
  2310  	return c.header_
  2311  }
  2312  
  2313  func (c *ProjectsLocationsProcessesDeleteCall) doRequest(alt string) (*http.Response, error) {
  2314  	reqHeaders := make(http.Header)
  2315  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
  2316  	for k, v := range c.header_ {
  2317  		reqHeaders[k] = v
  2318  	}
  2319  	reqHeaders.Set("User-Agent", c.s.userAgent())
  2320  	var body io.Reader = nil
  2321  	c.urlParams_.Set("alt", alt)
  2322  	c.urlParams_.Set("prettyPrint", "false")
  2323  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  2324  	urls += "?" + c.urlParams_.Encode()
  2325  	req, err := http.NewRequest("DELETE", urls, body)
  2326  	if err != nil {
  2327  		return nil, err
  2328  	}
  2329  	req.Header = reqHeaders
  2330  	googleapi.Expand(req.URL, map[string]string{
  2331  		"name": c.name,
  2332  	})
  2333  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  2334  }
  2335  
  2336  // Do executes the "datalineage.projects.locations.processes.delete" call.
  2337  // Exactly one of *GoogleLongrunningOperation or error will be non-nil.
  2338  // Any non-2xx status code is an error. Response headers are in either
  2339  // *GoogleLongrunningOperation.ServerResponse.Header or (if a response
  2340  // was returned at all) in error.(*googleapi.Error).Header. Use
  2341  // googleapi.IsNotModified to check whether the returned error was
  2342  // because http.StatusNotModified was returned.
  2343  func (c *ProjectsLocationsProcessesDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
  2344  	gensupport.SetOptions(c.urlParams_, opts...)
  2345  	res, err := c.doRequest("json")
  2346  	if res != nil && res.StatusCode == http.StatusNotModified {
  2347  		if res.Body != nil {
  2348  			res.Body.Close()
  2349  		}
  2350  		return nil, gensupport.WrapError(&googleapi.Error{
  2351  			Code:   res.StatusCode,
  2352  			Header: res.Header,
  2353  		})
  2354  	}
  2355  	if err != nil {
  2356  		return nil, err
  2357  	}
  2358  	defer googleapi.CloseBody(res)
  2359  	if err := googleapi.CheckResponse(res); err != nil {
  2360  		return nil, gensupport.WrapError(err)
  2361  	}
  2362  	ret := &GoogleLongrunningOperation{
  2363  		ServerResponse: googleapi.ServerResponse{
  2364  			Header:         res.Header,
  2365  			HTTPStatusCode: res.StatusCode,
  2366  		},
  2367  	}
  2368  	target := &ret
  2369  	if err := gensupport.DecodeResponse(target, res); err != nil {
  2370  		return nil, err
  2371  	}
  2372  	return ret, nil
  2373  	// {
  2374  	//   "description": "Deletes the process with the specified name.",
  2375  	//   "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/processes/{processesId}",
  2376  	//   "httpMethod": "DELETE",
  2377  	//   "id": "datalineage.projects.locations.processes.delete",
  2378  	//   "parameterOrder": [
  2379  	//     "name"
  2380  	//   ],
  2381  	//   "parameters": {
  2382  	//     "allowMissing": {
  2383  	//       "description": "If set to true and the process is not found, the request succeeds but the server doesn't perform any actions.",
  2384  	//       "location": "query",
  2385  	//       "type": "boolean"
  2386  	//     },
  2387  	//     "name": {
  2388  	//       "description": "Required. The name of the process to delete.",
  2389  	//       "location": "path",
  2390  	//       "pattern": "^projects/[^/]+/locations/[^/]+/processes/[^/]+$",
  2391  	//       "required": true,
  2392  	//       "type": "string"
  2393  	//     }
  2394  	//   },
  2395  	//   "path": "v1/{+name}",
  2396  	//   "response": {
  2397  	//     "$ref": "GoogleLongrunningOperation"
  2398  	//   },
  2399  	//   "scopes": [
  2400  	//     "https://www.googleapis.com/auth/cloud-platform"
  2401  	//   ]
  2402  	// }
  2403  
  2404  }
  2405  
  2406  // method id "datalineage.projects.locations.processes.get":
  2407  
  2408  type ProjectsLocationsProcessesGetCall struct {
  2409  	s            *Service
  2410  	name         string
  2411  	urlParams_   gensupport.URLParams
  2412  	ifNoneMatch_ string
  2413  	ctx_         context.Context
  2414  	header_      http.Header
  2415  }
  2416  
  2417  // Get: Gets the details of the specified process.
  2418  //
  2419  // - name: The name of the process to get.
  2420  func (r *ProjectsLocationsProcessesService) Get(name string) *ProjectsLocationsProcessesGetCall {
  2421  	c := &ProjectsLocationsProcessesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  2422  	c.name = name
  2423  	return c
  2424  }
  2425  
  2426  // Fields allows partial responses to be retrieved. See
  2427  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
  2428  // for more information.
  2429  func (c *ProjectsLocationsProcessesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsProcessesGetCall {
  2430  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  2431  	return c
  2432  }
  2433  
  2434  // IfNoneMatch sets the optional parameter which makes the operation
  2435  // fail if the object's ETag matches the given value. This is useful for
  2436  // getting updates only after the object has changed since the last
  2437  // request. Use googleapi.IsNotModified to check whether the response
  2438  // error from Do is the result of In-None-Match.
  2439  func (c *ProjectsLocationsProcessesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsProcessesGetCall {
  2440  	c.ifNoneMatch_ = entityTag
  2441  	return c
  2442  }
  2443  
  2444  // Context sets the context to be used in this call's Do method. Any
  2445  // pending HTTP request will be aborted if the provided context is
  2446  // canceled.
  2447  func (c *ProjectsLocationsProcessesGetCall) Context(ctx context.Context) *ProjectsLocationsProcessesGetCall {
  2448  	c.ctx_ = ctx
  2449  	return c
  2450  }
  2451  
  2452  // Header returns an http.Header that can be modified by the caller to
  2453  // add HTTP headers to the request.
  2454  func (c *ProjectsLocationsProcessesGetCall) Header() http.Header {
  2455  	if c.header_ == nil {
  2456  		c.header_ = make(http.Header)
  2457  	}
  2458  	return c.header_
  2459  }
  2460  
  2461  func (c *ProjectsLocationsProcessesGetCall) doRequest(alt string) (*http.Response, error) {
  2462  	reqHeaders := make(http.Header)
  2463  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
  2464  	for k, v := range c.header_ {
  2465  		reqHeaders[k] = v
  2466  	}
  2467  	reqHeaders.Set("User-Agent", c.s.userAgent())
  2468  	if c.ifNoneMatch_ != "" {
  2469  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  2470  	}
  2471  	var body io.Reader = nil
  2472  	c.urlParams_.Set("alt", alt)
  2473  	c.urlParams_.Set("prettyPrint", "false")
  2474  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  2475  	urls += "?" + c.urlParams_.Encode()
  2476  	req, err := http.NewRequest("GET", urls, body)
  2477  	if err != nil {
  2478  		return nil, err
  2479  	}
  2480  	req.Header = reqHeaders
  2481  	googleapi.Expand(req.URL, map[string]string{
  2482  		"name": c.name,
  2483  	})
  2484  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  2485  }
  2486  
  2487  // Do executes the "datalineage.projects.locations.processes.get" call.
  2488  // Exactly one of *GoogleCloudDatacatalogLineageV1Process or error will
  2489  // be non-nil. Any non-2xx status code is an error. Response headers are
  2490  // in either
  2491  // *GoogleCloudDatacatalogLineageV1Process.ServerResponse.Header or (if
  2492  // a response was returned at all) in error.(*googleapi.Error).Header.
  2493  // Use googleapi.IsNotModified to check whether the returned error was
  2494  // because http.StatusNotModified was returned.
  2495  func (c *ProjectsLocationsProcessesGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogLineageV1Process, error) {
  2496  	gensupport.SetOptions(c.urlParams_, opts...)
  2497  	res, err := c.doRequest("json")
  2498  	if res != nil && res.StatusCode == http.StatusNotModified {
  2499  		if res.Body != nil {
  2500  			res.Body.Close()
  2501  		}
  2502  		return nil, gensupport.WrapError(&googleapi.Error{
  2503  			Code:   res.StatusCode,
  2504  			Header: res.Header,
  2505  		})
  2506  	}
  2507  	if err != nil {
  2508  		return nil, err
  2509  	}
  2510  	defer googleapi.CloseBody(res)
  2511  	if err := googleapi.CheckResponse(res); err != nil {
  2512  		return nil, gensupport.WrapError(err)
  2513  	}
  2514  	ret := &GoogleCloudDatacatalogLineageV1Process{
  2515  		ServerResponse: googleapi.ServerResponse{
  2516  			Header:         res.Header,
  2517  			HTTPStatusCode: res.StatusCode,
  2518  		},
  2519  	}
  2520  	target := &ret
  2521  	if err := gensupport.DecodeResponse(target, res); err != nil {
  2522  		return nil, err
  2523  	}
  2524  	return ret, nil
  2525  	// {
  2526  	//   "description": "Gets the details of the specified process.",
  2527  	//   "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/processes/{processesId}",
  2528  	//   "httpMethod": "GET",
  2529  	//   "id": "datalineage.projects.locations.processes.get",
  2530  	//   "parameterOrder": [
  2531  	//     "name"
  2532  	//   ],
  2533  	//   "parameters": {
  2534  	//     "name": {
  2535  	//       "description": "Required. The name of the process to get.",
  2536  	//       "location": "path",
  2537  	//       "pattern": "^projects/[^/]+/locations/[^/]+/processes/[^/]+$",
  2538  	//       "required": true,
  2539  	//       "type": "string"
  2540  	//     }
  2541  	//   },
  2542  	//   "path": "v1/{+name}",
  2543  	//   "response": {
  2544  	//     "$ref": "GoogleCloudDatacatalogLineageV1Process"
  2545  	//   },
  2546  	//   "scopes": [
  2547  	//     "https://www.googleapis.com/auth/cloud-platform"
  2548  	//   ]
  2549  	// }
  2550  
  2551  }
  2552  
  2553  // method id "datalineage.projects.locations.processes.list":
  2554  
  2555  type ProjectsLocationsProcessesListCall struct {
  2556  	s            *Service
  2557  	parent       string
  2558  	urlParams_   gensupport.URLParams
  2559  	ifNoneMatch_ string
  2560  	ctx_         context.Context
  2561  	header_      http.Header
  2562  }
  2563  
  2564  // List: List processes in the given project and location. List order is
  2565  // descending by insertion time.
  2566  //
  2567  //   - parent: The name of the project and its location that owns this
  2568  //     collection of processes.
  2569  func (r *ProjectsLocationsProcessesService) List(parent string) *ProjectsLocationsProcessesListCall {
  2570  	c := &ProjectsLocationsProcessesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  2571  	c.parent = parent
  2572  	return c
  2573  }
  2574  
  2575  // PageSize sets the optional parameter "pageSize": The maximum number
  2576  // of processes to return. The service may return fewer than this value.
  2577  // If unspecified, at most 50 processes are returned. The maximum value
  2578  // is 100; values greater than 100 are cut to 100.
  2579  func (c *ProjectsLocationsProcessesListCall) PageSize(pageSize int64) *ProjectsLocationsProcessesListCall {
  2580  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  2581  	return c
  2582  }
  2583  
  2584  // PageToken sets the optional parameter "pageToken": The page token
  2585  // received from a previous `ListProcesses` call. Specify it to get the
  2586  // next page. When paginating, all other parameters specified in this
  2587  // call must match the parameters of the call that provided the page
  2588  // token.
  2589  func (c *ProjectsLocationsProcessesListCall) PageToken(pageToken string) *ProjectsLocationsProcessesListCall {
  2590  	c.urlParams_.Set("pageToken", pageToken)
  2591  	return c
  2592  }
  2593  
  2594  // Fields allows partial responses to be retrieved. See
  2595  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
  2596  // for more information.
  2597  func (c *ProjectsLocationsProcessesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsProcessesListCall {
  2598  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  2599  	return c
  2600  }
  2601  
  2602  // IfNoneMatch sets the optional parameter which makes the operation
  2603  // fail if the object's ETag matches the given value. This is useful for
  2604  // getting updates only after the object has changed since the last
  2605  // request. Use googleapi.IsNotModified to check whether the response
  2606  // error from Do is the result of In-None-Match.
  2607  func (c *ProjectsLocationsProcessesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsProcessesListCall {
  2608  	c.ifNoneMatch_ = entityTag
  2609  	return c
  2610  }
  2611  
  2612  // Context sets the context to be used in this call's Do method. Any
  2613  // pending HTTP request will be aborted if the provided context is
  2614  // canceled.
  2615  func (c *ProjectsLocationsProcessesListCall) Context(ctx context.Context) *ProjectsLocationsProcessesListCall {
  2616  	c.ctx_ = ctx
  2617  	return c
  2618  }
  2619  
  2620  // Header returns an http.Header that can be modified by the caller to
  2621  // add HTTP headers to the request.
  2622  func (c *ProjectsLocationsProcessesListCall) Header() http.Header {
  2623  	if c.header_ == nil {
  2624  		c.header_ = make(http.Header)
  2625  	}
  2626  	return c.header_
  2627  }
  2628  
  2629  func (c *ProjectsLocationsProcessesListCall) doRequest(alt string) (*http.Response, error) {
  2630  	reqHeaders := make(http.Header)
  2631  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
  2632  	for k, v := range c.header_ {
  2633  		reqHeaders[k] = v
  2634  	}
  2635  	reqHeaders.Set("User-Agent", c.s.userAgent())
  2636  	if c.ifNoneMatch_ != "" {
  2637  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  2638  	}
  2639  	var body io.Reader = nil
  2640  	c.urlParams_.Set("alt", alt)
  2641  	c.urlParams_.Set("prettyPrint", "false")
  2642  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/processes")
  2643  	urls += "?" + c.urlParams_.Encode()
  2644  	req, err := http.NewRequest("GET", urls, body)
  2645  	if err != nil {
  2646  		return nil, err
  2647  	}
  2648  	req.Header = reqHeaders
  2649  	googleapi.Expand(req.URL, map[string]string{
  2650  		"parent": c.parent,
  2651  	})
  2652  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  2653  }
  2654  
  2655  // Do executes the "datalineage.projects.locations.processes.list" call.
  2656  // Exactly one of *GoogleCloudDatacatalogLineageV1ListProcessesResponse
  2657  // or error will be non-nil. Any non-2xx status code is an error.
  2658  // Response headers are in either
  2659  // *GoogleCloudDatacatalogLineageV1ListProcessesResponse.ServerResponse.H
  2660  // eader or (if a response was returned at all) in
  2661  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  2662  // whether the returned error was because http.StatusNotModified was
  2663  // returned.
  2664  func (c *ProjectsLocationsProcessesListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogLineageV1ListProcessesResponse, error) {
  2665  	gensupport.SetOptions(c.urlParams_, opts...)
  2666  	res, err := c.doRequest("json")
  2667  	if res != nil && res.StatusCode == http.StatusNotModified {
  2668  		if res.Body != nil {
  2669  			res.Body.Close()
  2670  		}
  2671  		return nil, gensupport.WrapError(&googleapi.Error{
  2672  			Code:   res.StatusCode,
  2673  			Header: res.Header,
  2674  		})
  2675  	}
  2676  	if err != nil {
  2677  		return nil, err
  2678  	}
  2679  	defer googleapi.CloseBody(res)
  2680  	if err := googleapi.CheckResponse(res); err != nil {
  2681  		return nil, gensupport.WrapError(err)
  2682  	}
  2683  	ret := &GoogleCloudDatacatalogLineageV1ListProcessesResponse{
  2684  		ServerResponse: googleapi.ServerResponse{
  2685  			Header:         res.Header,
  2686  			HTTPStatusCode: res.StatusCode,
  2687  		},
  2688  	}
  2689  	target := &ret
  2690  	if err := gensupport.DecodeResponse(target, res); err != nil {
  2691  		return nil, err
  2692  	}
  2693  	return ret, nil
  2694  	// {
  2695  	//   "description": "List processes in the given project and location. List order is descending by insertion time.",
  2696  	//   "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/processes",
  2697  	//   "httpMethod": "GET",
  2698  	//   "id": "datalineage.projects.locations.processes.list",
  2699  	//   "parameterOrder": [
  2700  	//     "parent"
  2701  	//   ],
  2702  	//   "parameters": {
  2703  	//     "pageSize": {
  2704  	//       "description": "The maximum number of processes to return. The service may return fewer than this value. If unspecified, at most 50 processes are returned. The maximum value is 100; values greater than 100 are cut to 100.",
  2705  	//       "format": "int32",
  2706  	//       "location": "query",
  2707  	//       "type": "integer"
  2708  	//     },
  2709  	//     "pageToken": {
  2710  	//       "description": "The page token received from a previous `ListProcesses` call. Specify it to get the next page. When paginating, all other parameters specified in this call must match the parameters of the call that provided the page token.",
  2711  	//       "location": "query",
  2712  	//       "type": "string"
  2713  	//     },
  2714  	//     "parent": {
  2715  	//       "description": "Required. The name of the project and its location that owns this collection of processes.",
  2716  	//       "location": "path",
  2717  	//       "pattern": "^projects/[^/]+/locations/[^/]+$",
  2718  	//       "required": true,
  2719  	//       "type": "string"
  2720  	//     }
  2721  	//   },
  2722  	//   "path": "v1/{+parent}/processes",
  2723  	//   "response": {
  2724  	//     "$ref": "GoogleCloudDatacatalogLineageV1ListProcessesResponse"
  2725  	//   },
  2726  	//   "scopes": [
  2727  	//     "https://www.googleapis.com/auth/cloud-platform"
  2728  	//   ]
  2729  	// }
  2730  
  2731  }
  2732  
  2733  // Pages invokes f for each page of results.
  2734  // A non-nil error returned from f will halt the iteration.
  2735  // The provided context supersedes any context provided to the Context method.
  2736  func (c *ProjectsLocationsProcessesListCall) Pages(ctx context.Context, f func(*GoogleCloudDatacatalogLineageV1ListProcessesResponse) error) error {
  2737  	c.ctx_ = ctx
  2738  	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
  2739  	for {
  2740  		x, err := c.Do()
  2741  		if err != nil {
  2742  			return err
  2743  		}
  2744  		if err := f(x); err != nil {
  2745  			return err
  2746  		}
  2747  		if x.NextPageToken == "" {
  2748  			return nil
  2749  		}
  2750  		c.PageToken(x.NextPageToken)
  2751  	}
  2752  }
  2753  
  2754  // method id "datalineage.projects.locations.processes.patch":
  2755  
  2756  type ProjectsLocationsProcessesPatchCall struct {
  2757  	s                                      *Service
  2758  	name                                   string
  2759  	googleclouddatacataloglineagev1process *GoogleCloudDatacatalogLineageV1Process
  2760  	urlParams_                             gensupport.URLParams
  2761  	ctx_                                   context.Context
  2762  	header_                                http.Header
  2763  }
  2764  
  2765  // Patch: Updates a process.
  2766  //
  2767  //   - name: Immutable. The resource name of the lineage process. Format:
  2768  //     `projects/{project}/locations/{location}/processes/{process}`. Can
  2769  //     be specified or auto-assigned. {process} must be not longer than
  2770  //     200 characters and only contain characters in a set:
  2771  //     `a-zA-Z0-9_-:.`.
  2772  func (r *ProjectsLocationsProcessesService) Patch(name string, googleclouddatacataloglineagev1process *GoogleCloudDatacatalogLineageV1Process) *ProjectsLocationsProcessesPatchCall {
  2773  	c := &ProjectsLocationsProcessesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  2774  	c.name = name
  2775  	c.googleclouddatacataloglineagev1process = googleclouddatacataloglineagev1process
  2776  	return c
  2777  }
  2778  
  2779  // AllowMissing sets the optional parameter "allowMissing": If set to
  2780  // true and the process is not found, the request inserts it.
  2781  func (c *ProjectsLocationsProcessesPatchCall) AllowMissing(allowMissing bool) *ProjectsLocationsProcessesPatchCall {
  2782  	c.urlParams_.Set("allowMissing", fmt.Sprint(allowMissing))
  2783  	return c
  2784  }
  2785  
  2786  // UpdateMask sets the optional parameter "updateMask": The list of
  2787  // fields to update. Currently not used. The whole message is updated.
  2788  func (c *ProjectsLocationsProcessesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsProcessesPatchCall {
  2789  	c.urlParams_.Set("updateMask", updateMask)
  2790  	return c
  2791  }
  2792  
  2793  // Fields allows partial responses to be retrieved. See
  2794  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
  2795  // for more information.
  2796  func (c *ProjectsLocationsProcessesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsProcessesPatchCall {
  2797  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  2798  	return c
  2799  }
  2800  
  2801  // Context sets the context to be used in this call's Do method. Any
  2802  // pending HTTP request will be aborted if the provided context is
  2803  // canceled.
  2804  func (c *ProjectsLocationsProcessesPatchCall) Context(ctx context.Context) *ProjectsLocationsProcessesPatchCall {
  2805  	c.ctx_ = ctx
  2806  	return c
  2807  }
  2808  
  2809  // Header returns an http.Header that can be modified by the caller to
  2810  // add HTTP headers to the request.
  2811  func (c *ProjectsLocationsProcessesPatchCall) Header() http.Header {
  2812  	if c.header_ == nil {
  2813  		c.header_ = make(http.Header)
  2814  	}
  2815  	return c.header_
  2816  }
  2817  
  2818  func (c *ProjectsLocationsProcessesPatchCall) doRequest(alt string) (*http.Response, error) {
  2819  	reqHeaders := make(http.Header)
  2820  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
  2821  	for k, v := range c.header_ {
  2822  		reqHeaders[k] = v
  2823  	}
  2824  	reqHeaders.Set("User-Agent", c.s.userAgent())
  2825  	var body io.Reader = nil
  2826  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddatacataloglineagev1process)
  2827  	if err != nil {
  2828  		return nil, err
  2829  	}
  2830  	reqHeaders.Set("Content-Type", "application/json")
  2831  	c.urlParams_.Set("alt", alt)
  2832  	c.urlParams_.Set("prettyPrint", "false")
  2833  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  2834  	urls += "?" + c.urlParams_.Encode()
  2835  	req, err := http.NewRequest("PATCH", urls, body)
  2836  	if err != nil {
  2837  		return nil, err
  2838  	}
  2839  	req.Header = reqHeaders
  2840  	googleapi.Expand(req.URL, map[string]string{
  2841  		"name": c.name,
  2842  	})
  2843  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  2844  }
  2845  
  2846  // Do executes the "datalineage.projects.locations.processes.patch" call.
  2847  // Exactly one of *GoogleCloudDatacatalogLineageV1Process or error will
  2848  // be non-nil. Any non-2xx status code is an error. Response headers are
  2849  // in either
  2850  // *GoogleCloudDatacatalogLineageV1Process.ServerResponse.Header or (if
  2851  // a response was returned at all) in error.(*googleapi.Error).Header.
  2852  // Use googleapi.IsNotModified to check whether the returned error was
  2853  // because http.StatusNotModified was returned.
  2854  func (c *ProjectsLocationsProcessesPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogLineageV1Process, error) {
  2855  	gensupport.SetOptions(c.urlParams_, opts...)
  2856  	res, err := c.doRequest("json")
  2857  	if res != nil && res.StatusCode == http.StatusNotModified {
  2858  		if res.Body != nil {
  2859  			res.Body.Close()
  2860  		}
  2861  		return nil, gensupport.WrapError(&googleapi.Error{
  2862  			Code:   res.StatusCode,
  2863  			Header: res.Header,
  2864  		})
  2865  	}
  2866  	if err != nil {
  2867  		return nil, err
  2868  	}
  2869  	defer googleapi.CloseBody(res)
  2870  	if err := googleapi.CheckResponse(res); err != nil {
  2871  		return nil, gensupport.WrapError(err)
  2872  	}
  2873  	ret := &GoogleCloudDatacatalogLineageV1Process{
  2874  		ServerResponse: googleapi.ServerResponse{
  2875  			Header:         res.Header,
  2876  			HTTPStatusCode: res.StatusCode,
  2877  		},
  2878  	}
  2879  	target := &ret
  2880  	if err := gensupport.DecodeResponse(target, res); err != nil {
  2881  		return nil, err
  2882  	}
  2883  	return ret, nil
  2884  	// {
  2885  	//   "description": "Updates a process.",
  2886  	//   "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/processes/{processesId}",
  2887  	//   "httpMethod": "PATCH",
  2888  	//   "id": "datalineage.projects.locations.processes.patch",
  2889  	//   "parameterOrder": [
  2890  	//     "name"
  2891  	//   ],
  2892  	//   "parameters": {
  2893  	//     "allowMissing": {
  2894  	//       "description": "If set to true and the process is not found, the request inserts it.",
  2895  	//       "location": "query",
  2896  	//       "type": "boolean"
  2897  	//     },
  2898  	//     "name": {
  2899  	//       "description": "Immutable. The resource name of the lineage process. Format: `projects/{project}/locations/{location}/processes/{process}`. Can be specified or auto-assigned. {process} must be not longer than 200 characters and only contain characters in a set: `a-zA-Z0-9_-:.`",
  2900  	//       "location": "path",
  2901  	//       "pattern": "^projects/[^/]+/locations/[^/]+/processes/[^/]+$",
  2902  	//       "required": true,
  2903  	//       "type": "string"
  2904  	//     },
  2905  	//     "updateMask": {
  2906  	//       "description": "The list of fields to update. Currently not used. The whole message is updated.",
  2907  	//       "format": "google-fieldmask",
  2908  	//       "location": "query",
  2909  	//       "type": "string"
  2910  	//     }
  2911  	//   },
  2912  	//   "path": "v1/{+name}",
  2913  	//   "request": {
  2914  	//     "$ref": "GoogleCloudDatacatalogLineageV1Process"
  2915  	//   },
  2916  	//   "response": {
  2917  	//     "$ref": "GoogleCloudDatacatalogLineageV1Process"
  2918  	//   },
  2919  	//   "scopes": [
  2920  	//     "https://www.googleapis.com/auth/cloud-platform"
  2921  	//   ]
  2922  	// }
  2923  
  2924  }
  2925  
  2926  // method id "datalineage.projects.locations.processes.runs.create":
  2927  
  2928  type ProjectsLocationsProcessesRunsCreateCall struct {
  2929  	s                                  *Service
  2930  	parent                             string
  2931  	googleclouddatacataloglineagev1run *GoogleCloudDatacatalogLineageV1Run
  2932  	urlParams_                         gensupport.URLParams
  2933  	ctx_                               context.Context
  2934  	header_                            http.Header
  2935  }
  2936  
  2937  // Create: Creates a new run.
  2938  //
  2939  // - parent: The name of the process that should own the run.
  2940  func (r *ProjectsLocationsProcessesRunsService) Create(parent string, googleclouddatacataloglineagev1run *GoogleCloudDatacatalogLineageV1Run) *ProjectsLocationsProcessesRunsCreateCall {
  2941  	c := &ProjectsLocationsProcessesRunsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  2942  	c.parent = parent
  2943  	c.googleclouddatacataloglineagev1run = googleclouddatacataloglineagev1run
  2944  	return c
  2945  }
  2946  
  2947  // RequestId sets the optional parameter "requestId": A unique
  2948  // identifier for this request. Restricted to 36 ASCII characters. A
  2949  // random UUID is recommended. This request is idempotent only if a
  2950  // `request_id` is provided.
  2951  func (c *ProjectsLocationsProcessesRunsCreateCall) RequestId(requestId string) *ProjectsLocationsProcessesRunsCreateCall {
  2952  	c.urlParams_.Set("requestId", requestId)
  2953  	return c
  2954  }
  2955  
  2956  // Fields allows partial responses to be retrieved. See
  2957  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
  2958  // for more information.
  2959  func (c *ProjectsLocationsProcessesRunsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsProcessesRunsCreateCall {
  2960  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  2961  	return c
  2962  }
  2963  
  2964  // Context sets the context to be used in this call's Do method. Any
  2965  // pending HTTP request will be aborted if the provided context is
  2966  // canceled.
  2967  func (c *ProjectsLocationsProcessesRunsCreateCall) Context(ctx context.Context) *ProjectsLocationsProcessesRunsCreateCall {
  2968  	c.ctx_ = ctx
  2969  	return c
  2970  }
  2971  
  2972  // Header returns an http.Header that can be modified by the caller to
  2973  // add HTTP headers to the request.
  2974  func (c *ProjectsLocationsProcessesRunsCreateCall) Header() http.Header {
  2975  	if c.header_ == nil {
  2976  		c.header_ = make(http.Header)
  2977  	}
  2978  	return c.header_
  2979  }
  2980  
  2981  func (c *ProjectsLocationsProcessesRunsCreateCall) doRequest(alt string) (*http.Response, error) {
  2982  	reqHeaders := make(http.Header)
  2983  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
  2984  	for k, v := range c.header_ {
  2985  		reqHeaders[k] = v
  2986  	}
  2987  	reqHeaders.Set("User-Agent", c.s.userAgent())
  2988  	var body io.Reader = nil
  2989  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddatacataloglineagev1run)
  2990  	if err != nil {
  2991  		return nil, err
  2992  	}
  2993  	reqHeaders.Set("Content-Type", "application/json")
  2994  	c.urlParams_.Set("alt", alt)
  2995  	c.urlParams_.Set("prettyPrint", "false")
  2996  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/runs")
  2997  	urls += "?" + c.urlParams_.Encode()
  2998  	req, err := http.NewRequest("POST", urls, body)
  2999  	if err != nil {
  3000  		return nil, err
  3001  	}
  3002  	req.Header = reqHeaders
  3003  	googleapi.Expand(req.URL, map[string]string{
  3004  		"parent": c.parent,
  3005  	})
  3006  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3007  }
  3008  
  3009  // Do executes the "datalineage.projects.locations.processes.runs.create" call.
  3010  // Exactly one of *GoogleCloudDatacatalogLineageV1Run or error will be
  3011  // non-nil. Any non-2xx status code is an error. Response headers are in
  3012  // either *GoogleCloudDatacatalogLineageV1Run.ServerResponse.Header or
  3013  // (if a response was returned at all) in
  3014  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  3015  // whether the returned error was because http.StatusNotModified was
  3016  // returned.
  3017  func (c *ProjectsLocationsProcessesRunsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogLineageV1Run, error) {
  3018  	gensupport.SetOptions(c.urlParams_, opts...)
  3019  	res, err := c.doRequest("json")
  3020  	if res != nil && res.StatusCode == http.StatusNotModified {
  3021  		if res.Body != nil {
  3022  			res.Body.Close()
  3023  		}
  3024  		return nil, gensupport.WrapError(&googleapi.Error{
  3025  			Code:   res.StatusCode,
  3026  			Header: res.Header,
  3027  		})
  3028  	}
  3029  	if err != nil {
  3030  		return nil, err
  3031  	}
  3032  	defer googleapi.CloseBody(res)
  3033  	if err := googleapi.CheckResponse(res); err != nil {
  3034  		return nil, gensupport.WrapError(err)
  3035  	}
  3036  	ret := &GoogleCloudDatacatalogLineageV1Run{
  3037  		ServerResponse: googleapi.ServerResponse{
  3038  			Header:         res.Header,
  3039  			HTTPStatusCode: res.StatusCode,
  3040  		},
  3041  	}
  3042  	target := &ret
  3043  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3044  		return nil, err
  3045  	}
  3046  	return ret, nil
  3047  	// {
  3048  	//   "description": "Creates a new run.",
  3049  	//   "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/processes/{processesId}/runs",
  3050  	//   "httpMethod": "POST",
  3051  	//   "id": "datalineage.projects.locations.processes.runs.create",
  3052  	//   "parameterOrder": [
  3053  	//     "parent"
  3054  	//   ],
  3055  	//   "parameters": {
  3056  	//     "parent": {
  3057  	//       "description": "Required. The name of the process that should own the run.",
  3058  	//       "location": "path",
  3059  	//       "pattern": "^projects/[^/]+/locations/[^/]+/processes/[^/]+$",
  3060  	//       "required": true,
  3061  	//       "type": "string"
  3062  	//     },
  3063  	//     "requestId": {
  3064  	//       "description": "A unique identifier for this request. Restricted to 36 ASCII characters. A random UUID is recommended. This request is idempotent only if a `request_id` is provided.",
  3065  	//       "location": "query",
  3066  	//       "type": "string"
  3067  	//     }
  3068  	//   },
  3069  	//   "path": "v1/{+parent}/runs",
  3070  	//   "request": {
  3071  	//     "$ref": "GoogleCloudDatacatalogLineageV1Run"
  3072  	//   },
  3073  	//   "response": {
  3074  	//     "$ref": "GoogleCloudDatacatalogLineageV1Run"
  3075  	//   },
  3076  	//   "scopes": [
  3077  	//     "https://www.googleapis.com/auth/cloud-platform"
  3078  	//   ]
  3079  	// }
  3080  
  3081  }
  3082  
  3083  // method id "datalineage.projects.locations.processes.runs.delete":
  3084  
  3085  type ProjectsLocationsProcessesRunsDeleteCall struct {
  3086  	s          *Service
  3087  	name       string
  3088  	urlParams_ gensupport.URLParams
  3089  	ctx_       context.Context
  3090  	header_    http.Header
  3091  }
  3092  
  3093  // Delete: Deletes the run with the specified name.
  3094  //
  3095  // - name: The name of the run to delete.
  3096  func (r *ProjectsLocationsProcessesRunsService) Delete(name string) *ProjectsLocationsProcessesRunsDeleteCall {
  3097  	c := &ProjectsLocationsProcessesRunsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3098  	c.name = name
  3099  	return c
  3100  }
  3101  
  3102  // AllowMissing sets the optional parameter "allowMissing": If set to
  3103  // true and the run is not found, the request succeeds but the server
  3104  // doesn't perform any actions.
  3105  func (c *ProjectsLocationsProcessesRunsDeleteCall) AllowMissing(allowMissing bool) *ProjectsLocationsProcessesRunsDeleteCall {
  3106  	c.urlParams_.Set("allowMissing", fmt.Sprint(allowMissing))
  3107  	return c
  3108  }
  3109  
  3110  // Fields allows partial responses to be retrieved. See
  3111  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
  3112  // for more information.
  3113  func (c *ProjectsLocationsProcessesRunsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsProcessesRunsDeleteCall {
  3114  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3115  	return c
  3116  }
  3117  
  3118  // Context sets the context to be used in this call's Do method. Any
  3119  // pending HTTP request will be aborted if the provided context is
  3120  // canceled.
  3121  func (c *ProjectsLocationsProcessesRunsDeleteCall) Context(ctx context.Context) *ProjectsLocationsProcessesRunsDeleteCall {
  3122  	c.ctx_ = ctx
  3123  	return c
  3124  }
  3125  
  3126  // Header returns an http.Header that can be modified by the caller to
  3127  // add HTTP headers to the request.
  3128  func (c *ProjectsLocationsProcessesRunsDeleteCall) Header() http.Header {
  3129  	if c.header_ == nil {
  3130  		c.header_ = make(http.Header)
  3131  	}
  3132  	return c.header_
  3133  }
  3134  
  3135  func (c *ProjectsLocationsProcessesRunsDeleteCall) doRequest(alt string) (*http.Response, error) {
  3136  	reqHeaders := make(http.Header)
  3137  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
  3138  	for k, v := range c.header_ {
  3139  		reqHeaders[k] = v
  3140  	}
  3141  	reqHeaders.Set("User-Agent", c.s.userAgent())
  3142  	var body io.Reader = nil
  3143  	c.urlParams_.Set("alt", alt)
  3144  	c.urlParams_.Set("prettyPrint", "false")
  3145  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  3146  	urls += "?" + c.urlParams_.Encode()
  3147  	req, err := http.NewRequest("DELETE", urls, body)
  3148  	if err != nil {
  3149  		return nil, err
  3150  	}
  3151  	req.Header = reqHeaders
  3152  	googleapi.Expand(req.URL, map[string]string{
  3153  		"name": c.name,
  3154  	})
  3155  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3156  }
  3157  
  3158  // Do executes the "datalineage.projects.locations.processes.runs.delete" call.
  3159  // Exactly one of *GoogleLongrunningOperation or error will be non-nil.
  3160  // Any non-2xx status code is an error. Response headers are in either
  3161  // *GoogleLongrunningOperation.ServerResponse.Header or (if a response
  3162  // was returned at all) in error.(*googleapi.Error).Header. Use
  3163  // googleapi.IsNotModified to check whether the returned error was
  3164  // because http.StatusNotModified was returned.
  3165  func (c *ProjectsLocationsProcessesRunsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
  3166  	gensupport.SetOptions(c.urlParams_, opts...)
  3167  	res, err := c.doRequest("json")
  3168  	if res != nil && res.StatusCode == http.StatusNotModified {
  3169  		if res.Body != nil {
  3170  			res.Body.Close()
  3171  		}
  3172  		return nil, gensupport.WrapError(&googleapi.Error{
  3173  			Code:   res.StatusCode,
  3174  			Header: res.Header,
  3175  		})
  3176  	}
  3177  	if err != nil {
  3178  		return nil, err
  3179  	}
  3180  	defer googleapi.CloseBody(res)
  3181  	if err := googleapi.CheckResponse(res); err != nil {
  3182  		return nil, gensupport.WrapError(err)
  3183  	}
  3184  	ret := &GoogleLongrunningOperation{
  3185  		ServerResponse: googleapi.ServerResponse{
  3186  			Header:         res.Header,
  3187  			HTTPStatusCode: res.StatusCode,
  3188  		},
  3189  	}
  3190  	target := &ret
  3191  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3192  		return nil, err
  3193  	}
  3194  	return ret, nil
  3195  	// {
  3196  	//   "description": "Deletes the run with the specified name.",
  3197  	//   "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/processes/{processesId}/runs/{runsId}",
  3198  	//   "httpMethod": "DELETE",
  3199  	//   "id": "datalineage.projects.locations.processes.runs.delete",
  3200  	//   "parameterOrder": [
  3201  	//     "name"
  3202  	//   ],
  3203  	//   "parameters": {
  3204  	//     "allowMissing": {
  3205  	//       "description": "If set to true and the run is not found, the request succeeds but the server doesn't perform any actions.",
  3206  	//       "location": "query",
  3207  	//       "type": "boolean"
  3208  	//     },
  3209  	//     "name": {
  3210  	//       "description": "Required. The name of the run to delete.",
  3211  	//       "location": "path",
  3212  	//       "pattern": "^projects/[^/]+/locations/[^/]+/processes/[^/]+/runs/[^/]+$",
  3213  	//       "required": true,
  3214  	//       "type": "string"
  3215  	//     }
  3216  	//   },
  3217  	//   "path": "v1/{+name}",
  3218  	//   "response": {
  3219  	//     "$ref": "GoogleLongrunningOperation"
  3220  	//   },
  3221  	//   "scopes": [
  3222  	//     "https://www.googleapis.com/auth/cloud-platform"
  3223  	//   ]
  3224  	// }
  3225  
  3226  }
  3227  
  3228  // method id "datalineage.projects.locations.processes.runs.get":
  3229  
  3230  type ProjectsLocationsProcessesRunsGetCall struct {
  3231  	s            *Service
  3232  	name         string
  3233  	urlParams_   gensupport.URLParams
  3234  	ifNoneMatch_ string
  3235  	ctx_         context.Context
  3236  	header_      http.Header
  3237  }
  3238  
  3239  // Get: Gets the details of the specified run.
  3240  //
  3241  // - name: The name of the run to get.
  3242  func (r *ProjectsLocationsProcessesRunsService) Get(name string) *ProjectsLocationsProcessesRunsGetCall {
  3243  	c := &ProjectsLocationsProcessesRunsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3244  	c.name = name
  3245  	return c
  3246  }
  3247  
  3248  // Fields allows partial responses to be retrieved. See
  3249  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
  3250  // for more information.
  3251  func (c *ProjectsLocationsProcessesRunsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsProcessesRunsGetCall {
  3252  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3253  	return c
  3254  }
  3255  
  3256  // IfNoneMatch sets the optional parameter which makes the operation
  3257  // fail if the object's ETag matches the given value. This is useful for
  3258  // getting updates only after the object has changed since the last
  3259  // request. Use googleapi.IsNotModified to check whether the response
  3260  // error from Do is the result of In-None-Match.
  3261  func (c *ProjectsLocationsProcessesRunsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsProcessesRunsGetCall {
  3262  	c.ifNoneMatch_ = entityTag
  3263  	return c
  3264  }
  3265  
  3266  // Context sets the context to be used in this call's Do method. Any
  3267  // pending HTTP request will be aborted if the provided context is
  3268  // canceled.
  3269  func (c *ProjectsLocationsProcessesRunsGetCall) Context(ctx context.Context) *ProjectsLocationsProcessesRunsGetCall {
  3270  	c.ctx_ = ctx
  3271  	return c
  3272  }
  3273  
  3274  // Header returns an http.Header that can be modified by the caller to
  3275  // add HTTP headers to the request.
  3276  func (c *ProjectsLocationsProcessesRunsGetCall) Header() http.Header {
  3277  	if c.header_ == nil {
  3278  		c.header_ = make(http.Header)
  3279  	}
  3280  	return c.header_
  3281  }
  3282  
  3283  func (c *ProjectsLocationsProcessesRunsGetCall) doRequest(alt string) (*http.Response, error) {
  3284  	reqHeaders := make(http.Header)
  3285  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
  3286  	for k, v := range c.header_ {
  3287  		reqHeaders[k] = v
  3288  	}
  3289  	reqHeaders.Set("User-Agent", c.s.userAgent())
  3290  	if c.ifNoneMatch_ != "" {
  3291  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  3292  	}
  3293  	var body io.Reader = nil
  3294  	c.urlParams_.Set("alt", alt)
  3295  	c.urlParams_.Set("prettyPrint", "false")
  3296  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  3297  	urls += "?" + c.urlParams_.Encode()
  3298  	req, err := http.NewRequest("GET", urls, body)
  3299  	if err != nil {
  3300  		return nil, err
  3301  	}
  3302  	req.Header = reqHeaders
  3303  	googleapi.Expand(req.URL, map[string]string{
  3304  		"name": c.name,
  3305  	})
  3306  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3307  }
  3308  
  3309  // Do executes the "datalineage.projects.locations.processes.runs.get" call.
  3310  // Exactly one of *GoogleCloudDatacatalogLineageV1Run or error will be
  3311  // non-nil. Any non-2xx status code is an error. Response headers are in
  3312  // either *GoogleCloudDatacatalogLineageV1Run.ServerResponse.Header or
  3313  // (if a response was returned at all) in
  3314  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  3315  // whether the returned error was because http.StatusNotModified was
  3316  // returned.
  3317  func (c *ProjectsLocationsProcessesRunsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogLineageV1Run, error) {
  3318  	gensupport.SetOptions(c.urlParams_, opts...)
  3319  	res, err := c.doRequest("json")
  3320  	if res != nil && res.StatusCode == http.StatusNotModified {
  3321  		if res.Body != nil {
  3322  			res.Body.Close()
  3323  		}
  3324  		return nil, gensupport.WrapError(&googleapi.Error{
  3325  			Code:   res.StatusCode,
  3326  			Header: res.Header,
  3327  		})
  3328  	}
  3329  	if err != nil {
  3330  		return nil, err
  3331  	}
  3332  	defer googleapi.CloseBody(res)
  3333  	if err := googleapi.CheckResponse(res); err != nil {
  3334  		return nil, gensupport.WrapError(err)
  3335  	}
  3336  	ret := &GoogleCloudDatacatalogLineageV1Run{
  3337  		ServerResponse: googleapi.ServerResponse{
  3338  			Header:         res.Header,
  3339  			HTTPStatusCode: res.StatusCode,
  3340  		},
  3341  	}
  3342  	target := &ret
  3343  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3344  		return nil, err
  3345  	}
  3346  	return ret, nil
  3347  	// {
  3348  	//   "description": "Gets the details of the specified run.",
  3349  	//   "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/processes/{processesId}/runs/{runsId}",
  3350  	//   "httpMethod": "GET",
  3351  	//   "id": "datalineage.projects.locations.processes.runs.get",
  3352  	//   "parameterOrder": [
  3353  	//     "name"
  3354  	//   ],
  3355  	//   "parameters": {
  3356  	//     "name": {
  3357  	//       "description": "Required. The name of the run to get.",
  3358  	//       "location": "path",
  3359  	//       "pattern": "^projects/[^/]+/locations/[^/]+/processes/[^/]+/runs/[^/]+$",
  3360  	//       "required": true,
  3361  	//       "type": "string"
  3362  	//     }
  3363  	//   },
  3364  	//   "path": "v1/{+name}",
  3365  	//   "response": {
  3366  	//     "$ref": "GoogleCloudDatacatalogLineageV1Run"
  3367  	//   },
  3368  	//   "scopes": [
  3369  	//     "https://www.googleapis.com/auth/cloud-platform"
  3370  	//   ]
  3371  	// }
  3372  
  3373  }
  3374  
  3375  // method id "datalineage.projects.locations.processes.runs.list":
  3376  
  3377  type ProjectsLocationsProcessesRunsListCall struct {
  3378  	s            *Service
  3379  	parent       string
  3380  	urlParams_   gensupport.URLParams
  3381  	ifNoneMatch_ string
  3382  	ctx_         context.Context
  3383  	header_      http.Header
  3384  }
  3385  
  3386  // List: Lists runs in the given project and location. List order is
  3387  // descending by `start_time`.
  3388  //
  3389  // - parent: The name of process that owns this collection of runs.
  3390  func (r *ProjectsLocationsProcessesRunsService) List(parent string) *ProjectsLocationsProcessesRunsListCall {
  3391  	c := &ProjectsLocationsProcessesRunsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3392  	c.parent = parent
  3393  	return c
  3394  }
  3395  
  3396  // PageSize sets the optional parameter "pageSize": The maximum number
  3397  // of runs to return. The service may return fewer than this value. If
  3398  // unspecified, at most 50 runs are returned. The maximum value is 100;
  3399  // values greater than 100 are cut to 100.
  3400  func (c *ProjectsLocationsProcessesRunsListCall) PageSize(pageSize int64) *ProjectsLocationsProcessesRunsListCall {
  3401  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  3402  	return c
  3403  }
  3404  
  3405  // PageToken sets the optional parameter "pageToken": The page token
  3406  // received from a previous `ListRuns` call. Specify it to get the next
  3407  // page. When paginating, all other parameters specified in this call
  3408  // must match the parameters of the call that provided the page token.
  3409  func (c *ProjectsLocationsProcessesRunsListCall) PageToken(pageToken string) *ProjectsLocationsProcessesRunsListCall {
  3410  	c.urlParams_.Set("pageToken", pageToken)
  3411  	return c
  3412  }
  3413  
  3414  // Fields allows partial responses to be retrieved. See
  3415  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
  3416  // for more information.
  3417  func (c *ProjectsLocationsProcessesRunsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsProcessesRunsListCall {
  3418  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3419  	return c
  3420  }
  3421  
  3422  // IfNoneMatch sets the optional parameter which makes the operation
  3423  // fail if the object's ETag matches the given value. This is useful for
  3424  // getting updates only after the object has changed since the last
  3425  // request. Use googleapi.IsNotModified to check whether the response
  3426  // error from Do is the result of In-None-Match.
  3427  func (c *ProjectsLocationsProcessesRunsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsProcessesRunsListCall {
  3428  	c.ifNoneMatch_ = entityTag
  3429  	return c
  3430  }
  3431  
  3432  // Context sets the context to be used in this call's Do method. Any
  3433  // pending HTTP request will be aborted if the provided context is
  3434  // canceled.
  3435  func (c *ProjectsLocationsProcessesRunsListCall) Context(ctx context.Context) *ProjectsLocationsProcessesRunsListCall {
  3436  	c.ctx_ = ctx
  3437  	return c
  3438  }
  3439  
  3440  // Header returns an http.Header that can be modified by the caller to
  3441  // add HTTP headers to the request.
  3442  func (c *ProjectsLocationsProcessesRunsListCall) Header() http.Header {
  3443  	if c.header_ == nil {
  3444  		c.header_ = make(http.Header)
  3445  	}
  3446  	return c.header_
  3447  }
  3448  
  3449  func (c *ProjectsLocationsProcessesRunsListCall) doRequest(alt string) (*http.Response, error) {
  3450  	reqHeaders := make(http.Header)
  3451  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
  3452  	for k, v := range c.header_ {
  3453  		reqHeaders[k] = v
  3454  	}
  3455  	reqHeaders.Set("User-Agent", c.s.userAgent())
  3456  	if c.ifNoneMatch_ != "" {
  3457  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  3458  	}
  3459  	var body io.Reader = nil
  3460  	c.urlParams_.Set("alt", alt)
  3461  	c.urlParams_.Set("prettyPrint", "false")
  3462  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/runs")
  3463  	urls += "?" + c.urlParams_.Encode()
  3464  	req, err := http.NewRequest("GET", urls, body)
  3465  	if err != nil {
  3466  		return nil, err
  3467  	}
  3468  	req.Header = reqHeaders
  3469  	googleapi.Expand(req.URL, map[string]string{
  3470  		"parent": c.parent,
  3471  	})
  3472  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3473  }
  3474  
  3475  // Do executes the "datalineage.projects.locations.processes.runs.list" call.
  3476  // Exactly one of *GoogleCloudDatacatalogLineageV1ListRunsResponse or
  3477  // error will be non-nil. Any non-2xx status code is an error. Response
  3478  // headers are in either
  3479  // *GoogleCloudDatacatalogLineageV1ListRunsResponse.ServerResponse.Header
  3480  //
  3481  //	or (if a response was returned at all) in
  3482  //
  3483  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  3484  // whether the returned error was because http.StatusNotModified was
  3485  // returned.
  3486  func (c *ProjectsLocationsProcessesRunsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogLineageV1ListRunsResponse, error) {
  3487  	gensupport.SetOptions(c.urlParams_, opts...)
  3488  	res, err := c.doRequest("json")
  3489  	if res != nil && res.StatusCode == http.StatusNotModified {
  3490  		if res.Body != nil {
  3491  			res.Body.Close()
  3492  		}
  3493  		return nil, gensupport.WrapError(&googleapi.Error{
  3494  			Code:   res.StatusCode,
  3495  			Header: res.Header,
  3496  		})
  3497  	}
  3498  	if err != nil {
  3499  		return nil, err
  3500  	}
  3501  	defer googleapi.CloseBody(res)
  3502  	if err := googleapi.CheckResponse(res); err != nil {
  3503  		return nil, gensupport.WrapError(err)
  3504  	}
  3505  	ret := &GoogleCloudDatacatalogLineageV1ListRunsResponse{
  3506  		ServerResponse: googleapi.ServerResponse{
  3507  			Header:         res.Header,
  3508  			HTTPStatusCode: res.StatusCode,
  3509  		},
  3510  	}
  3511  	target := &ret
  3512  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3513  		return nil, err
  3514  	}
  3515  	return ret, nil
  3516  	// {
  3517  	//   "description": "Lists runs in the given project and location. List order is descending by `start_time`.",
  3518  	//   "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/processes/{processesId}/runs",
  3519  	//   "httpMethod": "GET",
  3520  	//   "id": "datalineage.projects.locations.processes.runs.list",
  3521  	//   "parameterOrder": [
  3522  	//     "parent"
  3523  	//   ],
  3524  	//   "parameters": {
  3525  	//     "pageSize": {
  3526  	//       "description": "The maximum number of runs to return. The service may return fewer than this value. If unspecified, at most 50 runs are returned. The maximum value is 100; values greater than 100 are cut to 100.",
  3527  	//       "format": "int32",
  3528  	//       "location": "query",
  3529  	//       "type": "integer"
  3530  	//     },
  3531  	//     "pageToken": {
  3532  	//       "description": "The page token received from a previous `ListRuns` call. Specify it to get the next page. When paginating, all other parameters specified in this call must match the parameters of the call that provided the page token.",
  3533  	//       "location": "query",
  3534  	//       "type": "string"
  3535  	//     },
  3536  	//     "parent": {
  3537  	//       "description": "Required. The name of process that owns this collection of runs.",
  3538  	//       "location": "path",
  3539  	//       "pattern": "^projects/[^/]+/locations/[^/]+/processes/[^/]+$",
  3540  	//       "required": true,
  3541  	//       "type": "string"
  3542  	//     }
  3543  	//   },
  3544  	//   "path": "v1/{+parent}/runs",
  3545  	//   "response": {
  3546  	//     "$ref": "GoogleCloudDatacatalogLineageV1ListRunsResponse"
  3547  	//   },
  3548  	//   "scopes": [
  3549  	//     "https://www.googleapis.com/auth/cloud-platform"
  3550  	//   ]
  3551  	// }
  3552  
  3553  }
  3554  
  3555  // Pages invokes f for each page of results.
  3556  // A non-nil error returned from f will halt the iteration.
  3557  // The provided context supersedes any context provided to the Context method.
  3558  func (c *ProjectsLocationsProcessesRunsListCall) Pages(ctx context.Context, f func(*GoogleCloudDatacatalogLineageV1ListRunsResponse) error) error {
  3559  	c.ctx_ = ctx
  3560  	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
  3561  	for {
  3562  		x, err := c.Do()
  3563  		if err != nil {
  3564  			return err
  3565  		}
  3566  		if err := f(x); err != nil {
  3567  			return err
  3568  		}
  3569  		if x.NextPageToken == "" {
  3570  			return nil
  3571  		}
  3572  		c.PageToken(x.NextPageToken)
  3573  	}
  3574  }
  3575  
  3576  // method id "datalineage.projects.locations.processes.runs.patch":
  3577  
  3578  type ProjectsLocationsProcessesRunsPatchCall struct {
  3579  	s                                  *Service
  3580  	name                               string
  3581  	googleclouddatacataloglineagev1run *GoogleCloudDatacatalogLineageV1Run
  3582  	urlParams_                         gensupport.URLParams
  3583  	ctx_                               context.Context
  3584  	header_                            http.Header
  3585  }
  3586  
  3587  // Patch: Updates a run.
  3588  //
  3589  //   - name: Immutable. The resource name of the run. Format:
  3590  //     `projects/{project}/locations/{location}/processes/{process}/runs/{r
  3591  //     un}`. Can be specified or auto-assigned. {run} must be not longer
  3592  //     than 200 characters and only contain characters in a set:
  3593  //     `a-zA-Z0-9_-:.`.
  3594  func (r *ProjectsLocationsProcessesRunsService) Patch(name string, googleclouddatacataloglineagev1run *GoogleCloudDatacatalogLineageV1Run) *ProjectsLocationsProcessesRunsPatchCall {
  3595  	c := &ProjectsLocationsProcessesRunsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3596  	c.name = name
  3597  	c.googleclouddatacataloglineagev1run = googleclouddatacataloglineagev1run
  3598  	return c
  3599  }
  3600  
  3601  // AllowMissing sets the optional parameter "allowMissing": If set to
  3602  // true and the run is not found, the request creates it.
  3603  func (c *ProjectsLocationsProcessesRunsPatchCall) AllowMissing(allowMissing bool) *ProjectsLocationsProcessesRunsPatchCall {
  3604  	c.urlParams_.Set("allowMissing", fmt.Sprint(allowMissing))
  3605  	return c
  3606  }
  3607  
  3608  // UpdateMask sets the optional parameter "updateMask": The list of
  3609  // fields to update. Currently not used. The whole message is updated.
  3610  func (c *ProjectsLocationsProcessesRunsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsProcessesRunsPatchCall {
  3611  	c.urlParams_.Set("updateMask", updateMask)
  3612  	return c
  3613  }
  3614  
  3615  // Fields allows partial responses to be retrieved. See
  3616  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
  3617  // for more information.
  3618  func (c *ProjectsLocationsProcessesRunsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsProcessesRunsPatchCall {
  3619  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3620  	return c
  3621  }
  3622  
  3623  // Context sets the context to be used in this call's Do method. Any
  3624  // pending HTTP request will be aborted if the provided context is
  3625  // canceled.
  3626  func (c *ProjectsLocationsProcessesRunsPatchCall) Context(ctx context.Context) *ProjectsLocationsProcessesRunsPatchCall {
  3627  	c.ctx_ = ctx
  3628  	return c
  3629  }
  3630  
  3631  // Header returns an http.Header that can be modified by the caller to
  3632  // add HTTP headers to the request.
  3633  func (c *ProjectsLocationsProcessesRunsPatchCall) Header() http.Header {
  3634  	if c.header_ == nil {
  3635  		c.header_ = make(http.Header)
  3636  	}
  3637  	return c.header_
  3638  }
  3639  
  3640  func (c *ProjectsLocationsProcessesRunsPatchCall) doRequest(alt string) (*http.Response, error) {
  3641  	reqHeaders := make(http.Header)
  3642  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
  3643  	for k, v := range c.header_ {
  3644  		reqHeaders[k] = v
  3645  	}
  3646  	reqHeaders.Set("User-Agent", c.s.userAgent())
  3647  	var body io.Reader = nil
  3648  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddatacataloglineagev1run)
  3649  	if err != nil {
  3650  		return nil, err
  3651  	}
  3652  	reqHeaders.Set("Content-Type", "application/json")
  3653  	c.urlParams_.Set("alt", alt)
  3654  	c.urlParams_.Set("prettyPrint", "false")
  3655  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  3656  	urls += "?" + c.urlParams_.Encode()
  3657  	req, err := http.NewRequest("PATCH", urls, body)
  3658  	if err != nil {
  3659  		return nil, err
  3660  	}
  3661  	req.Header = reqHeaders
  3662  	googleapi.Expand(req.URL, map[string]string{
  3663  		"name": c.name,
  3664  	})
  3665  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3666  }
  3667  
  3668  // Do executes the "datalineage.projects.locations.processes.runs.patch" call.
  3669  // Exactly one of *GoogleCloudDatacatalogLineageV1Run or error will be
  3670  // non-nil. Any non-2xx status code is an error. Response headers are in
  3671  // either *GoogleCloudDatacatalogLineageV1Run.ServerResponse.Header or
  3672  // (if a response was returned at all) in
  3673  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  3674  // whether the returned error was because http.StatusNotModified was
  3675  // returned.
  3676  func (c *ProjectsLocationsProcessesRunsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogLineageV1Run, error) {
  3677  	gensupport.SetOptions(c.urlParams_, opts...)
  3678  	res, err := c.doRequest("json")
  3679  	if res != nil && res.StatusCode == http.StatusNotModified {
  3680  		if res.Body != nil {
  3681  			res.Body.Close()
  3682  		}
  3683  		return nil, gensupport.WrapError(&googleapi.Error{
  3684  			Code:   res.StatusCode,
  3685  			Header: res.Header,
  3686  		})
  3687  	}
  3688  	if err != nil {
  3689  		return nil, err
  3690  	}
  3691  	defer googleapi.CloseBody(res)
  3692  	if err := googleapi.CheckResponse(res); err != nil {
  3693  		return nil, gensupport.WrapError(err)
  3694  	}
  3695  	ret := &GoogleCloudDatacatalogLineageV1Run{
  3696  		ServerResponse: googleapi.ServerResponse{
  3697  			Header:         res.Header,
  3698  			HTTPStatusCode: res.StatusCode,
  3699  		},
  3700  	}
  3701  	target := &ret
  3702  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3703  		return nil, err
  3704  	}
  3705  	return ret, nil
  3706  	// {
  3707  	//   "description": "Updates a run.",
  3708  	//   "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/processes/{processesId}/runs/{runsId}",
  3709  	//   "httpMethod": "PATCH",
  3710  	//   "id": "datalineage.projects.locations.processes.runs.patch",
  3711  	//   "parameterOrder": [
  3712  	//     "name"
  3713  	//   ],
  3714  	//   "parameters": {
  3715  	//     "allowMissing": {
  3716  	//       "description": "If set to true and the run is not found, the request creates it.",
  3717  	//       "location": "query",
  3718  	//       "type": "boolean"
  3719  	//     },
  3720  	//     "name": {
  3721  	//       "description": "Immutable. The resource name of the run. Format: `projects/{project}/locations/{location}/processes/{process}/runs/{run}`. Can be specified or auto-assigned. {run} must be not longer than 200 characters and only contain characters in a set: `a-zA-Z0-9_-:.`",
  3722  	//       "location": "path",
  3723  	//       "pattern": "^projects/[^/]+/locations/[^/]+/processes/[^/]+/runs/[^/]+$",
  3724  	//       "required": true,
  3725  	//       "type": "string"
  3726  	//     },
  3727  	//     "updateMask": {
  3728  	//       "description": "The list of fields to update. Currently not used. The whole message is updated.",
  3729  	//       "format": "google-fieldmask",
  3730  	//       "location": "query",
  3731  	//       "type": "string"
  3732  	//     }
  3733  	//   },
  3734  	//   "path": "v1/{+name}",
  3735  	//   "request": {
  3736  	//     "$ref": "GoogleCloudDatacatalogLineageV1Run"
  3737  	//   },
  3738  	//   "response": {
  3739  	//     "$ref": "GoogleCloudDatacatalogLineageV1Run"
  3740  	//   },
  3741  	//   "scopes": [
  3742  	//     "https://www.googleapis.com/auth/cloud-platform"
  3743  	//   ]
  3744  	// }
  3745  
  3746  }
  3747  
  3748  // method id "datalineage.projects.locations.processes.runs.lineageEvents.create":
  3749  
  3750  type ProjectsLocationsProcessesRunsLineageEventsCreateCall struct {
  3751  	s                                           *Service
  3752  	parent                                      string
  3753  	googleclouddatacataloglineagev1lineageevent *GoogleCloudDatacatalogLineageV1LineageEvent
  3754  	urlParams_                                  gensupport.URLParams
  3755  	ctx_                                        context.Context
  3756  	header_                                     http.Header
  3757  }
  3758  
  3759  // Create: Creates a new lineage event.
  3760  //
  3761  // - parent: The name of the run that should own the lineage event.
  3762  func (r *ProjectsLocationsProcessesRunsLineageEventsService) Create(parent string, googleclouddatacataloglineagev1lineageevent *GoogleCloudDatacatalogLineageV1LineageEvent) *ProjectsLocationsProcessesRunsLineageEventsCreateCall {
  3763  	c := &ProjectsLocationsProcessesRunsLineageEventsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3764  	c.parent = parent
  3765  	c.googleclouddatacataloglineagev1lineageevent = googleclouddatacataloglineagev1lineageevent
  3766  	return c
  3767  }
  3768  
  3769  // RequestId sets the optional parameter "requestId": A unique
  3770  // identifier for this request. Restricted to 36 ASCII characters. A
  3771  // random UUID is recommended. This request is idempotent only if a
  3772  // `request_id` is provided.
  3773  func (c *ProjectsLocationsProcessesRunsLineageEventsCreateCall) RequestId(requestId string) *ProjectsLocationsProcessesRunsLineageEventsCreateCall {
  3774  	c.urlParams_.Set("requestId", requestId)
  3775  	return c
  3776  }
  3777  
  3778  // Fields allows partial responses to be retrieved. See
  3779  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
  3780  // for more information.
  3781  func (c *ProjectsLocationsProcessesRunsLineageEventsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsProcessesRunsLineageEventsCreateCall {
  3782  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3783  	return c
  3784  }
  3785  
  3786  // Context sets the context to be used in this call's Do method. Any
  3787  // pending HTTP request will be aborted if the provided context is
  3788  // canceled.
  3789  func (c *ProjectsLocationsProcessesRunsLineageEventsCreateCall) Context(ctx context.Context) *ProjectsLocationsProcessesRunsLineageEventsCreateCall {
  3790  	c.ctx_ = ctx
  3791  	return c
  3792  }
  3793  
  3794  // Header returns an http.Header that can be modified by the caller to
  3795  // add HTTP headers to the request.
  3796  func (c *ProjectsLocationsProcessesRunsLineageEventsCreateCall) Header() http.Header {
  3797  	if c.header_ == nil {
  3798  		c.header_ = make(http.Header)
  3799  	}
  3800  	return c.header_
  3801  }
  3802  
  3803  func (c *ProjectsLocationsProcessesRunsLineageEventsCreateCall) doRequest(alt string) (*http.Response, error) {
  3804  	reqHeaders := make(http.Header)
  3805  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
  3806  	for k, v := range c.header_ {
  3807  		reqHeaders[k] = v
  3808  	}
  3809  	reqHeaders.Set("User-Agent", c.s.userAgent())
  3810  	var body io.Reader = nil
  3811  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddatacataloglineagev1lineageevent)
  3812  	if err != nil {
  3813  		return nil, err
  3814  	}
  3815  	reqHeaders.Set("Content-Type", "application/json")
  3816  	c.urlParams_.Set("alt", alt)
  3817  	c.urlParams_.Set("prettyPrint", "false")
  3818  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/lineageEvents")
  3819  	urls += "?" + c.urlParams_.Encode()
  3820  	req, err := http.NewRequest("POST", urls, body)
  3821  	if err != nil {
  3822  		return nil, err
  3823  	}
  3824  	req.Header = reqHeaders
  3825  	googleapi.Expand(req.URL, map[string]string{
  3826  		"parent": c.parent,
  3827  	})
  3828  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3829  }
  3830  
  3831  // Do executes the "datalineage.projects.locations.processes.runs.lineageEvents.create" call.
  3832  // Exactly one of *GoogleCloudDatacatalogLineageV1LineageEvent or error
  3833  // will be non-nil. Any non-2xx status code is an error. Response
  3834  // headers are in either
  3835  // *GoogleCloudDatacatalogLineageV1LineageEvent.ServerResponse.Header or
  3836  // (if a response was returned at all) in
  3837  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  3838  // whether the returned error was because http.StatusNotModified was
  3839  // returned.
  3840  func (c *ProjectsLocationsProcessesRunsLineageEventsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogLineageV1LineageEvent, error) {
  3841  	gensupport.SetOptions(c.urlParams_, opts...)
  3842  	res, err := c.doRequest("json")
  3843  	if res != nil && res.StatusCode == http.StatusNotModified {
  3844  		if res.Body != nil {
  3845  			res.Body.Close()
  3846  		}
  3847  		return nil, gensupport.WrapError(&googleapi.Error{
  3848  			Code:   res.StatusCode,
  3849  			Header: res.Header,
  3850  		})
  3851  	}
  3852  	if err != nil {
  3853  		return nil, err
  3854  	}
  3855  	defer googleapi.CloseBody(res)
  3856  	if err := googleapi.CheckResponse(res); err != nil {
  3857  		return nil, gensupport.WrapError(err)
  3858  	}
  3859  	ret := &GoogleCloudDatacatalogLineageV1LineageEvent{
  3860  		ServerResponse: googleapi.ServerResponse{
  3861  			Header:         res.Header,
  3862  			HTTPStatusCode: res.StatusCode,
  3863  		},
  3864  	}
  3865  	target := &ret
  3866  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3867  		return nil, err
  3868  	}
  3869  	return ret, nil
  3870  	// {
  3871  	//   "description": "Creates a new lineage event.",
  3872  	//   "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/processes/{processesId}/runs/{runsId}/lineageEvents",
  3873  	//   "httpMethod": "POST",
  3874  	//   "id": "datalineage.projects.locations.processes.runs.lineageEvents.create",
  3875  	//   "parameterOrder": [
  3876  	//     "parent"
  3877  	//   ],
  3878  	//   "parameters": {
  3879  	//     "parent": {
  3880  	//       "description": "Required. The name of the run that should own the lineage event.",
  3881  	//       "location": "path",
  3882  	//       "pattern": "^projects/[^/]+/locations/[^/]+/processes/[^/]+/runs/[^/]+$",
  3883  	//       "required": true,
  3884  	//       "type": "string"
  3885  	//     },
  3886  	//     "requestId": {
  3887  	//       "description": "A unique identifier for this request. Restricted to 36 ASCII characters. A random UUID is recommended. This request is idempotent only if a `request_id` is provided.",
  3888  	//       "location": "query",
  3889  	//       "type": "string"
  3890  	//     }
  3891  	//   },
  3892  	//   "path": "v1/{+parent}/lineageEvents",
  3893  	//   "request": {
  3894  	//     "$ref": "GoogleCloudDatacatalogLineageV1LineageEvent"
  3895  	//   },
  3896  	//   "response": {
  3897  	//     "$ref": "GoogleCloudDatacatalogLineageV1LineageEvent"
  3898  	//   },
  3899  	//   "scopes": [
  3900  	//     "https://www.googleapis.com/auth/cloud-platform"
  3901  	//   ]
  3902  	// }
  3903  
  3904  }
  3905  
  3906  // method id "datalineage.projects.locations.processes.runs.lineageEvents.delete":
  3907  
  3908  type ProjectsLocationsProcessesRunsLineageEventsDeleteCall struct {
  3909  	s          *Service
  3910  	name       string
  3911  	urlParams_ gensupport.URLParams
  3912  	ctx_       context.Context
  3913  	header_    http.Header
  3914  }
  3915  
  3916  // Delete: Deletes the lineage event with the specified name.
  3917  //
  3918  // - name: The name of the lineage event to delete.
  3919  func (r *ProjectsLocationsProcessesRunsLineageEventsService) Delete(name string) *ProjectsLocationsProcessesRunsLineageEventsDeleteCall {
  3920  	c := &ProjectsLocationsProcessesRunsLineageEventsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3921  	c.name = name
  3922  	return c
  3923  }
  3924  
  3925  // AllowMissing sets the optional parameter "allowMissing": If set to
  3926  // true and the lineage event is not found, the request succeeds but the
  3927  // server doesn't perform any actions.
  3928  func (c *ProjectsLocationsProcessesRunsLineageEventsDeleteCall) AllowMissing(allowMissing bool) *ProjectsLocationsProcessesRunsLineageEventsDeleteCall {
  3929  	c.urlParams_.Set("allowMissing", fmt.Sprint(allowMissing))
  3930  	return c
  3931  }
  3932  
  3933  // Fields allows partial responses to be retrieved. See
  3934  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
  3935  // for more information.
  3936  func (c *ProjectsLocationsProcessesRunsLineageEventsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsProcessesRunsLineageEventsDeleteCall {
  3937  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3938  	return c
  3939  }
  3940  
  3941  // Context sets the context to be used in this call's Do method. Any
  3942  // pending HTTP request will be aborted if the provided context is
  3943  // canceled.
  3944  func (c *ProjectsLocationsProcessesRunsLineageEventsDeleteCall) Context(ctx context.Context) *ProjectsLocationsProcessesRunsLineageEventsDeleteCall {
  3945  	c.ctx_ = ctx
  3946  	return c
  3947  }
  3948  
  3949  // Header returns an http.Header that can be modified by the caller to
  3950  // add HTTP headers to the request.
  3951  func (c *ProjectsLocationsProcessesRunsLineageEventsDeleteCall) Header() http.Header {
  3952  	if c.header_ == nil {
  3953  		c.header_ = make(http.Header)
  3954  	}
  3955  	return c.header_
  3956  }
  3957  
  3958  func (c *ProjectsLocationsProcessesRunsLineageEventsDeleteCall) doRequest(alt string) (*http.Response, error) {
  3959  	reqHeaders := make(http.Header)
  3960  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
  3961  	for k, v := range c.header_ {
  3962  		reqHeaders[k] = v
  3963  	}
  3964  	reqHeaders.Set("User-Agent", c.s.userAgent())
  3965  	var body io.Reader = nil
  3966  	c.urlParams_.Set("alt", alt)
  3967  	c.urlParams_.Set("prettyPrint", "false")
  3968  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  3969  	urls += "?" + c.urlParams_.Encode()
  3970  	req, err := http.NewRequest("DELETE", urls, body)
  3971  	if err != nil {
  3972  		return nil, err
  3973  	}
  3974  	req.Header = reqHeaders
  3975  	googleapi.Expand(req.URL, map[string]string{
  3976  		"name": c.name,
  3977  	})
  3978  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3979  }
  3980  
  3981  // Do executes the "datalineage.projects.locations.processes.runs.lineageEvents.delete" call.
  3982  // Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
  3983  // non-2xx status code is an error. Response headers are in either
  3984  // *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
  3985  // returned at all) in error.(*googleapi.Error).Header. Use
  3986  // googleapi.IsNotModified to check whether the returned error was
  3987  // because http.StatusNotModified was returned.
  3988  func (c *ProjectsLocationsProcessesRunsLineageEventsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
  3989  	gensupport.SetOptions(c.urlParams_, opts...)
  3990  	res, err := c.doRequest("json")
  3991  	if res != nil && res.StatusCode == http.StatusNotModified {
  3992  		if res.Body != nil {
  3993  			res.Body.Close()
  3994  		}
  3995  		return nil, gensupport.WrapError(&googleapi.Error{
  3996  			Code:   res.StatusCode,
  3997  			Header: res.Header,
  3998  		})
  3999  	}
  4000  	if err != nil {
  4001  		return nil, err
  4002  	}
  4003  	defer googleapi.CloseBody(res)
  4004  	if err := googleapi.CheckResponse(res); err != nil {
  4005  		return nil, gensupport.WrapError(err)
  4006  	}
  4007  	ret := &GoogleProtobufEmpty{
  4008  		ServerResponse: googleapi.ServerResponse{
  4009  			Header:         res.Header,
  4010  			HTTPStatusCode: res.StatusCode,
  4011  		},
  4012  	}
  4013  	target := &ret
  4014  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4015  		return nil, err
  4016  	}
  4017  	return ret, nil
  4018  	// {
  4019  	//   "description": "Deletes the lineage event with the specified name.",
  4020  	//   "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/processes/{processesId}/runs/{runsId}/lineageEvents/{lineageEventsId}",
  4021  	//   "httpMethod": "DELETE",
  4022  	//   "id": "datalineage.projects.locations.processes.runs.lineageEvents.delete",
  4023  	//   "parameterOrder": [
  4024  	//     "name"
  4025  	//   ],
  4026  	//   "parameters": {
  4027  	//     "allowMissing": {
  4028  	//       "description": "If set to true and the lineage event is not found, the request succeeds but the server doesn't perform any actions.",
  4029  	//       "location": "query",
  4030  	//       "type": "boolean"
  4031  	//     },
  4032  	//     "name": {
  4033  	//       "description": "Required. The name of the lineage event to delete.",
  4034  	//       "location": "path",
  4035  	//       "pattern": "^projects/[^/]+/locations/[^/]+/processes/[^/]+/runs/[^/]+/lineageEvents/[^/]+$",
  4036  	//       "required": true,
  4037  	//       "type": "string"
  4038  	//     }
  4039  	//   },
  4040  	//   "path": "v1/{+name}",
  4041  	//   "response": {
  4042  	//     "$ref": "GoogleProtobufEmpty"
  4043  	//   },
  4044  	//   "scopes": [
  4045  	//     "https://www.googleapis.com/auth/cloud-platform"
  4046  	//   ]
  4047  	// }
  4048  
  4049  }
  4050  
  4051  // method id "datalineage.projects.locations.processes.runs.lineageEvents.get":
  4052  
  4053  type ProjectsLocationsProcessesRunsLineageEventsGetCall struct {
  4054  	s            *Service
  4055  	name         string
  4056  	urlParams_   gensupport.URLParams
  4057  	ifNoneMatch_ string
  4058  	ctx_         context.Context
  4059  	header_      http.Header
  4060  }
  4061  
  4062  // Get: Gets details of a specified lineage event.
  4063  //
  4064  // - name: The name of the lineage event to get.
  4065  func (r *ProjectsLocationsProcessesRunsLineageEventsService) Get(name string) *ProjectsLocationsProcessesRunsLineageEventsGetCall {
  4066  	c := &ProjectsLocationsProcessesRunsLineageEventsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4067  	c.name = name
  4068  	return c
  4069  }
  4070  
  4071  // Fields allows partial responses to be retrieved. See
  4072  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
  4073  // for more information.
  4074  func (c *ProjectsLocationsProcessesRunsLineageEventsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsProcessesRunsLineageEventsGetCall {
  4075  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4076  	return c
  4077  }
  4078  
  4079  // IfNoneMatch sets the optional parameter which makes the operation
  4080  // fail if the object's ETag matches the given value. This is useful for
  4081  // getting updates only after the object has changed since the last
  4082  // request. Use googleapi.IsNotModified to check whether the response
  4083  // error from Do is the result of In-None-Match.
  4084  func (c *ProjectsLocationsProcessesRunsLineageEventsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsProcessesRunsLineageEventsGetCall {
  4085  	c.ifNoneMatch_ = entityTag
  4086  	return c
  4087  }
  4088  
  4089  // Context sets the context to be used in this call's Do method. Any
  4090  // pending HTTP request will be aborted if the provided context is
  4091  // canceled.
  4092  func (c *ProjectsLocationsProcessesRunsLineageEventsGetCall) Context(ctx context.Context) *ProjectsLocationsProcessesRunsLineageEventsGetCall {
  4093  	c.ctx_ = ctx
  4094  	return c
  4095  }
  4096  
  4097  // Header returns an http.Header that can be modified by the caller to
  4098  // add HTTP headers to the request.
  4099  func (c *ProjectsLocationsProcessesRunsLineageEventsGetCall) Header() http.Header {
  4100  	if c.header_ == nil {
  4101  		c.header_ = make(http.Header)
  4102  	}
  4103  	return c.header_
  4104  }
  4105  
  4106  func (c *ProjectsLocationsProcessesRunsLineageEventsGetCall) doRequest(alt string) (*http.Response, error) {
  4107  	reqHeaders := make(http.Header)
  4108  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
  4109  	for k, v := range c.header_ {
  4110  		reqHeaders[k] = v
  4111  	}
  4112  	reqHeaders.Set("User-Agent", c.s.userAgent())
  4113  	if c.ifNoneMatch_ != "" {
  4114  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  4115  	}
  4116  	var body io.Reader = nil
  4117  	c.urlParams_.Set("alt", alt)
  4118  	c.urlParams_.Set("prettyPrint", "false")
  4119  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  4120  	urls += "?" + c.urlParams_.Encode()
  4121  	req, err := http.NewRequest("GET", urls, body)
  4122  	if err != nil {
  4123  		return nil, err
  4124  	}
  4125  	req.Header = reqHeaders
  4126  	googleapi.Expand(req.URL, map[string]string{
  4127  		"name": c.name,
  4128  	})
  4129  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4130  }
  4131  
  4132  // Do executes the "datalineage.projects.locations.processes.runs.lineageEvents.get" call.
  4133  // Exactly one of *GoogleCloudDatacatalogLineageV1LineageEvent or error
  4134  // will be non-nil. Any non-2xx status code is an error. Response
  4135  // headers are in either
  4136  // *GoogleCloudDatacatalogLineageV1LineageEvent.ServerResponse.Header or
  4137  // (if a response was returned at all) in
  4138  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  4139  // whether the returned error was because http.StatusNotModified was
  4140  // returned.
  4141  func (c *ProjectsLocationsProcessesRunsLineageEventsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogLineageV1LineageEvent, error) {
  4142  	gensupport.SetOptions(c.urlParams_, opts...)
  4143  	res, err := c.doRequest("json")
  4144  	if res != nil && res.StatusCode == http.StatusNotModified {
  4145  		if res.Body != nil {
  4146  			res.Body.Close()
  4147  		}
  4148  		return nil, gensupport.WrapError(&googleapi.Error{
  4149  			Code:   res.StatusCode,
  4150  			Header: res.Header,
  4151  		})
  4152  	}
  4153  	if err != nil {
  4154  		return nil, err
  4155  	}
  4156  	defer googleapi.CloseBody(res)
  4157  	if err := googleapi.CheckResponse(res); err != nil {
  4158  		return nil, gensupport.WrapError(err)
  4159  	}
  4160  	ret := &GoogleCloudDatacatalogLineageV1LineageEvent{
  4161  		ServerResponse: googleapi.ServerResponse{
  4162  			Header:         res.Header,
  4163  			HTTPStatusCode: res.StatusCode,
  4164  		},
  4165  	}
  4166  	target := &ret
  4167  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4168  		return nil, err
  4169  	}
  4170  	return ret, nil
  4171  	// {
  4172  	//   "description": "Gets details of a specified lineage event.",
  4173  	//   "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/processes/{processesId}/runs/{runsId}/lineageEvents/{lineageEventsId}",
  4174  	//   "httpMethod": "GET",
  4175  	//   "id": "datalineage.projects.locations.processes.runs.lineageEvents.get",
  4176  	//   "parameterOrder": [
  4177  	//     "name"
  4178  	//   ],
  4179  	//   "parameters": {
  4180  	//     "name": {
  4181  	//       "description": "Required. The name of the lineage event to get.",
  4182  	//       "location": "path",
  4183  	//       "pattern": "^projects/[^/]+/locations/[^/]+/processes/[^/]+/runs/[^/]+/lineageEvents/[^/]+$",
  4184  	//       "required": true,
  4185  	//       "type": "string"
  4186  	//     }
  4187  	//   },
  4188  	//   "path": "v1/{+name}",
  4189  	//   "response": {
  4190  	//     "$ref": "GoogleCloudDatacatalogLineageV1LineageEvent"
  4191  	//   },
  4192  	//   "scopes": [
  4193  	//     "https://www.googleapis.com/auth/cloud-platform"
  4194  	//   ]
  4195  	// }
  4196  
  4197  }
  4198  
  4199  // method id "datalineage.projects.locations.processes.runs.lineageEvents.list":
  4200  
  4201  type ProjectsLocationsProcessesRunsLineageEventsListCall struct {
  4202  	s            *Service
  4203  	parent       string
  4204  	urlParams_   gensupport.URLParams
  4205  	ifNoneMatch_ string
  4206  	ctx_         context.Context
  4207  	header_      http.Header
  4208  }
  4209  
  4210  // List: Lists lineage events in the given project and location. The
  4211  // list order is not defined.
  4212  //
  4213  //   - parent: The name of the run that owns the collection of lineage
  4214  //     events to get.
  4215  func (r *ProjectsLocationsProcessesRunsLineageEventsService) List(parent string) *ProjectsLocationsProcessesRunsLineageEventsListCall {
  4216  	c := &ProjectsLocationsProcessesRunsLineageEventsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4217  	c.parent = parent
  4218  	return c
  4219  }
  4220  
  4221  // PageSize sets the optional parameter "pageSize": The maximum number
  4222  // of lineage events to return. The service may return fewer events than
  4223  // this value. If unspecified, at most 50 events are returned. The
  4224  // maximum value is 100; values greater than 100 are cut to 100.
  4225  func (c *ProjectsLocationsProcessesRunsLineageEventsListCall) PageSize(pageSize int64) *ProjectsLocationsProcessesRunsLineageEventsListCall {
  4226  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  4227  	return c
  4228  }
  4229  
  4230  // PageToken sets the optional parameter "pageToken": The page token
  4231  // received from a previous `ListLineageEvents` call. Specify it to get
  4232  // the next page. When paginating, all other parameters specified in
  4233  // this call must match the parameters of the call that provided the
  4234  // page token.
  4235  func (c *ProjectsLocationsProcessesRunsLineageEventsListCall) PageToken(pageToken string) *ProjectsLocationsProcessesRunsLineageEventsListCall {
  4236  	c.urlParams_.Set("pageToken", pageToken)
  4237  	return c
  4238  }
  4239  
  4240  // Fields allows partial responses to be retrieved. See
  4241  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
  4242  // for more information.
  4243  func (c *ProjectsLocationsProcessesRunsLineageEventsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsProcessesRunsLineageEventsListCall {
  4244  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4245  	return c
  4246  }
  4247  
  4248  // IfNoneMatch sets the optional parameter which makes the operation
  4249  // fail if the object's ETag matches the given value. This is useful for
  4250  // getting updates only after the object has changed since the last
  4251  // request. Use googleapi.IsNotModified to check whether the response
  4252  // error from Do is the result of In-None-Match.
  4253  func (c *ProjectsLocationsProcessesRunsLineageEventsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsProcessesRunsLineageEventsListCall {
  4254  	c.ifNoneMatch_ = entityTag
  4255  	return c
  4256  }
  4257  
  4258  // Context sets the context to be used in this call's Do method. Any
  4259  // pending HTTP request will be aborted if the provided context is
  4260  // canceled.
  4261  func (c *ProjectsLocationsProcessesRunsLineageEventsListCall) Context(ctx context.Context) *ProjectsLocationsProcessesRunsLineageEventsListCall {
  4262  	c.ctx_ = ctx
  4263  	return c
  4264  }
  4265  
  4266  // Header returns an http.Header that can be modified by the caller to
  4267  // add HTTP headers to the request.
  4268  func (c *ProjectsLocationsProcessesRunsLineageEventsListCall) Header() http.Header {
  4269  	if c.header_ == nil {
  4270  		c.header_ = make(http.Header)
  4271  	}
  4272  	return c.header_
  4273  }
  4274  
  4275  func (c *ProjectsLocationsProcessesRunsLineageEventsListCall) doRequest(alt string) (*http.Response, error) {
  4276  	reqHeaders := make(http.Header)
  4277  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
  4278  	for k, v := range c.header_ {
  4279  		reqHeaders[k] = v
  4280  	}
  4281  	reqHeaders.Set("User-Agent", c.s.userAgent())
  4282  	if c.ifNoneMatch_ != "" {
  4283  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  4284  	}
  4285  	var body io.Reader = nil
  4286  	c.urlParams_.Set("alt", alt)
  4287  	c.urlParams_.Set("prettyPrint", "false")
  4288  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/lineageEvents")
  4289  	urls += "?" + c.urlParams_.Encode()
  4290  	req, err := http.NewRequest("GET", urls, body)
  4291  	if err != nil {
  4292  		return nil, err
  4293  	}
  4294  	req.Header = reqHeaders
  4295  	googleapi.Expand(req.URL, map[string]string{
  4296  		"parent": c.parent,
  4297  	})
  4298  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4299  }
  4300  
  4301  // Do executes the "datalineage.projects.locations.processes.runs.lineageEvents.list" call.
  4302  // Exactly one of
  4303  // *GoogleCloudDatacatalogLineageV1ListLineageEventsResponse or error
  4304  // will be non-nil. Any non-2xx status code is an error. Response
  4305  // headers are in either
  4306  // *GoogleCloudDatacatalogLineageV1ListLineageEventsResponse.ServerRespon
  4307  // se.Header or (if a response was returned at all) in
  4308  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  4309  // whether the returned error was because http.StatusNotModified was
  4310  // returned.
  4311  func (c *ProjectsLocationsProcessesRunsLineageEventsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatacatalogLineageV1ListLineageEventsResponse, error) {
  4312  	gensupport.SetOptions(c.urlParams_, opts...)
  4313  	res, err := c.doRequest("json")
  4314  	if res != nil && res.StatusCode == http.StatusNotModified {
  4315  		if res.Body != nil {
  4316  			res.Body.Close()
  4317  		}
  4318  		return nil, gensupport.WrapError(&googleapi.Error{
  4319  			Code:   res.StatusCode,
  4320  			Header: res.Header,
  4321  		})
  4322  	}
  4323  	if err != nil {
  4324  		return nil, err
  4325  	}
  4326  	defer googleapi.CloseBody(res)
  4327  	if err := googleapi.CheckResponse(res); err != nil {
  4328  		return nil, gensupport.WrapError(err)
  4329  	}
  4330  	ret := &GoogleCloudDatacatalogLineageV1ListLineageEventsResponse{
  4331  		ServerResponse: googleapi.ServerResponse{
  4332  			Header:         res.Header,
  4333  			HTTPStatusCode: res.StatusCode,
  4334  		},
  4335  	}
  4336  	target := &ret
  4337  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4338  		return nil, err
  4339  	}
  4340  	return ret, nil
  4341  	// {
  4342  	//   "description": "Lists lineage events in the given project and location. The list order is not defined.",
  4343  	//   "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/processes/{processesId}/runs/{runsId}/lineageEvents",
  4344  	//   "httpMethod": "GET",
  4345  	//   "id": "datalineage.projects.locations.processes.runs.lineageEvents.list",
  4346  	//   "parameterOrder": [
  4347  	//     "parent"
  4348  	//   ],
  4349  	//   "parameters": {
  4350  	//     "pageSize": {
  4351  	//       "description": "The maximum number of lineage events to return. The service may return fewer events than this value. If unspecified, at most 50 events are returned. The maximum value is 100; values greater than 100 are cut to 100.",
  4352  	//       "format": "int32",
  4353  	//       "location": "query",
  4354  	//       "type": "integer"
  4355  	//     },
  4356  	//     "pageToken": {
  4357  	//       "description": "The page token received from a previous `ListLineageEvents` call. Specify it to get the next page. When paginating, all other parameters specified in this call must match the parameters of the call that provided the page token.",
  4358  	//       "location": "query",
  4359  	//       "type": "string"
  4360  	//     },
  4361  	//     "parent": {
  4362  	//       "description": "Required. The name of the run that owns the collection of lineage events to get.",
  4363  	//       "location": "path",
  4364  	//       "pattern": "^projects/[^/]+/locations/[^/]+/processes/[^/]+/runs/[^/]+$",
  4365  	//       "required": true,
  4366  	//       "type": "string"
  4367  	//     }
  4368  	//   },
  4369  	//   "path": "v1/{+parent}/lineageEvents",
  4370  	//   "response": {
  4371  	//     "$ref": "GoogleCloudDatacatalogLineageV1ListLineageEventsResponse"
  4372  	//   },
  4373  	//   "scopes": [
  4374  	//     "https://www.googleapis.com/auth/cloud-platform"
  4375  	//   ]
  4376  	// }
  4377  
  4378  }
  4379  
  4380  // Pages invokes f for each page of results.
  4381  // A non-nil error returned from f will halt the iteration.
  4382  // The provided context supersedes any context provided to the Context method.
  4383  func (c *ProjectsLocationsProcessesRunsLineageEventsListCall) Pages(ctx context.Context, f func(*GoogleCloudDatacatalogLineageV1ListLineageEventsResponse) error) error {
  4384  	c.ctx_ = ctx
  4385  	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
  4386  	for {
  4387  		x, err := c.Do()
  4388  		if err != nil {
  4389  			return err
  4390  		}
  4391  		if err := f(x); err != nil {
  4392  			return err
  4393  		}
  4394  		if x.NextPageToken == "" {
  4395  			return nil
  4396  		}
  4397  		c.PageToken(x.NextPageToken)
  4398  	}
  4399  }
  4400  

View as plain text