google-cloud-data_catalog-lineage-v1 0.4.0 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -36,6 +36,9 @@ module Google
36
36
  # example, when table data is based on data from multiple tables.
37
37
  #
38
38
  class Client
39
+ # @private
40
+ DEFAULT_ENDPOINT_TEMPLATE = "datalineage.$UNIVERSE_DOMAIN$"
41
+
39
42
  include Paths
40
43
 
41
44
  # @private
@@ -101,6 +104,15 @@ module Google
101
104
  @config
102
105
  end
103
106
 
107
+ ##
108
+ # The effective universe domain
109
+ #
110
+ # @return [String]
111
+ #
112
+ def universe_domain
113
+ @lineage_stub.universe_domain
114
+ end
115
+
104
116
  ##
105
117
  # Create a new Lineage REST client object.
106
118
  #
@@ -128,8 +140,9 @@ module Google
128
140
  credentials = @config.credentials
129
141
  # Use self-signed JWT if the endpoint is unchanged from default,
130
142
  # but only if the default endpoint does not have a region prefix.
131
- enable_self_signed_jwt = @config.endpoint == Configuration::DEFAULT_ENDPOINT &&
132
- !@config.endpoint.split(".").first.include?("-")
143
+ enable_self_signed_jwt = @config.endpoint.nil? ||
144
+ (@config.endpoint == Configuration::DEFAULT_ENDPOINT &&
145
+ !@config.endpoint.split(".").first.include?("-"))
133
146
  credentials ||= Credentials.default scope: @config.scope,
134
147
  enable_self_signed_jwt: enable_self_signed_jwt
135
148
  if credentials.is_a?(::String) || credentials.is_a?(::Hash)
@@ -143,9 +156,15 @@ module Google
143
156
  config.credentials = credentials
144
157
  config.quota_project = @quota_project_id
145
158
  config.endpoint = @config.endpoint
159
+ config.universe_domain = @config.universe_domain
146
160
  end
147
161
 
148
- @lineage_stub = ::Google::Cloud::DataCatalog::Lineage::V1::Lineage::Rest::ServiceStub.new endpoint: @config.endpoint, credentials: credentials
162
+ @lineage_stub = ::Google::Cloud::DataCatalog::Lineage::V1::Lineage::Rest::ServiceStub.new(
163
+ endpoint: @config.endpoint,
164
+ endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
165
+ universe_domain: @config.universe_domain,
166
+ credentials: credentials
167
+ )
149
168
  end
150
169
 
151
170
  ##
@@ -157,6 +176,95 @@ module Google
157
176
 
158
177
  # Service calls
159
178
 
179
+ ##
180
+ # Creates new lineage events together with their parents: process and run.
181
+ # Updates the process and run if they already exist.
182
+ # Mapped from Open Lineage specification:
183
+ # https://github.com/OpenLineage/OpenLineage/blob/main/spec/OpenLineage.json.
184
+ #
185
+ # @overload process_open_lineage_run_event(request, options = nil)
186
+ # Pass arguments to `process_open_lineage_run_event` via a request object, either of type
187
+ # {::Google::Cloud::DataCatalog::Lineage::V1::ProcessOpenLineageRunEventRequest} or an equivalent Hash.
188
+ #
189
+ # @param request [::Google::Cloud::DataCatalog::Lineage::V1::ProcessOpenLineageRunEventRequest, ::Hash]
190
+ # A request object representing the call parameters. Required. To specify no
191
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
192
+ # @param options [::Gapic::CallOptions, ::Hash]
193
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
194
+ #
195
+ # @overload process_open_lineage_run_event(parent: nil, open_lineage: nil, request_id: nil)
196
+ # Pass arguments to `process_open_lineage_run_event` via keyword arguments. Note that at
197
+ # least one keyword argument is required. To specify no parameters, or to keep all
198
+ # the default parameter values, pass an empty Hash as a request object (see above).
199
+ #
200
+ # @param parent [::String]
201
+ # Required. The name of the project and its location that should own the
202
+ # process, run, and lineage event.
203
+ # @param open_lineage [::Google::Protobuf::Struct, ::Hash]
204
+ # Required. OpenLineage message following OpenLineage format:
205
+ # https://github.com/OpenLineage/OpenLineage/blob/main/spec/OpenLineage.json
206
+ # @param request_id [::String]
207
+ # A unique identifier for this request. Restricted to 36 ASCII characters.
208
+ # A random UUID is recommended. This request is idempotent only if a
209
+ # `request_id` is provided.
210
+ # @yield [result, operation] Access the result along with the TransportOperation object
211
+ # @yieldparam result [::Google::Cloud::DataCatalog::Lineage::V1::ProcessOpenLineageRunEventResponse]
212
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
213
+ #
214
+ # @return [::Google::Cloud::DataCatalog::Lineage::V1::ProcessOpenLineageRunEventResponse]
215
+ #
216
+ # @raise [::Google::Cloud::Error] if the REST call is aborted.
217
+ #
218
+ # @example Basic example
219
+ # require "google/cloud/data_catalog/lineage/v1"
220
+ #
221
+ # # Create a client object. The client can be reused for multiple calls.
222
+ # client = Google::Cloud::DataCatalog::Lineage::V1::Lineage::Rest::Client.new
223
+ #
224
+ # # Create a request. To set request fields, pass in keyword arguments.
225
+ # request = Google::Cloud::DataCatalog::Lineage::V1::ProcessOpenLineageRunEventRequest.new
226
+ #
227
+ # # Call the process_open_lineage_run_event method.
228
+ # result = client.process_open_lineage_run_event request
229
+ #
230
+ # # The returned object is of type Google::Cloud::DataCatalog::Lineage::V1::ProcessOpenLineageRunEventResponse.
231
+ # p result
232
+ #
233
+ def process_open_lineage_run_event request, options = nil
234
+ raise ::ArgumentError, "request must be provided" if request.nil?
235
+
236
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::DataCatalog::Lineage::V1::ProcessOpenLineageRunEventRequest
237
+
238
+ # Converts hash and nil to an options object
239
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
240
+
241
+ # Customize the options with defaults
242
+ call_metadata = @config.rpcs.process_open_lineage_run_event.metadata.to_h
243
+
244
+ # Set x-goog-api-client and x-goog-user-project headers
245
+ call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
246
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
247
+ gapic_version: ::Google::Cloud::DataCatalog::Lineage::V1::VERSION,
248
+ transports_version_send: [:rest]
249
+
250
+ call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
251
+
252
+ options.apply_defaults timeout: @config.rpcs.process_open_lineage_run_event.timeout,
253
+ metadata: call_metadata,
254
+ retry_policy: @config.rpcs.process_open_lineage_run_event.retry_policy
255
+
256
+ options.apply_defaults timeout: @config.timeout,
257
+ metadata: @config.metadata,
258
+ retry_policy: @config.retry_policy
259
+
260
+ @lineage_stub.process_open_lineage_run_event request, options do |result, operation|
261
+ yield result, operation if block_given?
262
+ return result
263
+ end
264
+ rescue ::Gapic::Rest::Error => e
265
+ raise ::Google::Cloud::Error.from_error(e)
266
+ end
267
+
160
268
  ##
161
269
  # Creates a new process.
162
270
  #
@@ -687,7 +795,7 @@ module Google
687
795
  # @param options [::Gapic::CallOptions, ::Hash]
688
796
  # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
689
797
  #
690
- # @overload update_run(run: nil, update_mask: nil)
798
+ # @overload update_run(run: nil, update_mask: nil, allow_missing: nil)
691
799
  # Pass arguments to `update_run` via keyword arguments. Note that at
692
800
  # least one keyword argument is required. To specify no parameters, or to keep all
693
801
  # the default parameter values, pass an empty Hash as a request object (see above).
@@ -702,6 +810,8 @@ module Google
702
810
  # @param update_mask [::Google::Protobuf::FieldMask, ::Hash]
703
811
  # The list of fields to update. Currently not used. The whole message is
704
812
  # updated.
813
+ # @param allow_missing [::Boolean]
814
+ # If set to true and the run is not found, the request creates it.
705
815
  # @yield [result, operation] Access the result along with the TransportOperation object
706
816
  # @yieldparam result [::Google::Cloud::DataCatalog::Lineage::V1::Run]
707
817
  # @yieldparam operation [::Gapic::Rest::TransportOperation]
@@ -1389,7 +1499,7 @@ module Google
1389
1499
  # the default parameter values, pass an empty Hash as a request object (see above).
1390
1500
  #
1391
1501
  # @param parent [::String]
1392
- # Required. The project and location you want search in the format `projects/*/locations/*`
1502
+ # Required. The project and location you want search in.
1393
1503
  # @param source [::Google::Cloud::DataCatalog::Lineage::V1::EntityReference, ::Hash]
1394
1504
  # Optional. Send asset information in the **source** field to retrieve all
1395
1505
  # links that lead from the specified asset to downstream assets.
@@ -1504,7 +1614,7 @@ module Google
1504
1614
  # the default parameter values, pass an empty Hash as a request object (see above).
1505
1615
  #
1506
1616
  # @param parent [::String]
1507
- # Required. The project and location you want search in the format `projects/*/locations/*`
1617
+ # Required. The project and location where you want to search.
1508
1618
  # @param links [::Array<::String>]
1509
1619
  # Required. An array of links to check for their associated LineageProcesses.
1510
1620
  #
@@ -1602,23 +1712,23 @@ module Google
1602
1712
  # @example
1603
1713
  #
1604
1714
  # # Modify the global config, setting the timeout for
1605
- # # create_process to 20 seconds,
1715
+ # # process_open_lineage_run_event to 20 seconds,
1606
1716
  # # and all remaining timeouts to 10 seconds.
1607
1717
  # ::Google::Cloud::DataCatalog::Lineage::V1::Lineage::Rest::Client.configure do |config|
1608
1718
  # config.timeout = 10.0
1609
- # config.rpcs.create_process.timeout = 20.0
1719
+ # config.rpcs.process_open_lineage_run_event.timeout = 20.0
1610
1720
  # end
1611
1721
  #
1612
1722
  # # Apply the above configuration only to a new client.
1613
1723
  # client = ::Google::Cloud::DataCatalog::Lineage::V1::Lineage::Rest::Client.new do |config|
1614
1724
  # config.timeout = 10.0
1615
- # config.rpcs.create_process.timeout = 20.0
1725
+ # config.rpcs.process_open_lineage_run_event.timeout = 20.0
1616
1726
  # end
1617
1727
  #
1618
1728
  # @!attribute [rw] endpoint
1619
- # The hostname or hostname:port of the service endpoint.
1620
- # Defaults to `"datalineage.googleapis.com"`.
1621
- # @return [::String]
1729
+ # A custom service endpoint, as a hostname or hostname:port. The default is
1730
+ # nil, indicating to use the default endpoint in the current universe domain.
1731
+ # @return [::String,nil]
1622
1732
  # @!attribute [rw] credentials
1623
1733
  # Credentials to send with calls. You may provide any of the following types:
1624
1734
  # * (`String`) The path to a service account key file in JSON format
@@ -1655,13 +1765,20 @@ module Google
1655
1765
  # @!attribute [rw] quota_project
1656
1766
  # A separate project against which to charge quota.
1657
1767
  # @return [::String]
1768
+ # @!attribute [rw] universe_domain
1769
+ # The universe domain within which to make requests. This determines the
1770
+ # default endpoint URL. The default value of nil uses the environment
1771
+ # universe (usually the default "googleapis.com" universe).
1772
+ # @return [::String,nil]
1658
1773
  #
1659
1774
  class Configuration
1660
1775
  extend ::Gapic::Config
1661
1776
 
1777
+ # @private
1778
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
1662
1779
  DEFAULT_ENDPOINT = "datalineage.googleapis.com"
1663
1780
 
1664
- config_attr :endpoint, DEFAULT_ENDPOINT, ::String
1781
+ config_attr :endpoint, nil, ::String, nil
1665
1782
  config_attr :credentials, nil do |value|
1666
1783
  allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
1667
1784
  allowed.any? { |klass| klass === value }
@@ -1673,6 +1790,7 @@ module Google
1673
1790
  config_attr :metadata, nil, ::Hash, nil
1674
1791
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
1675
1792
  config_attr :quota_project, nil, ::String, nil
1793
+ config_attr :universe_domain, nil, ::String, nil
1676
1794
 
1677
1795
  # @private
1678
1796
  def initialize parent_config = nil
@@ -1711,6 +1829,11 @@ module Google
1711
1829
  # trigger a retry.
1712
1830
  #
1713
1831
  class Rpcs
1832
+ ##
1833
+ # RPC-specific configuration for `process_open_lineage_run_event`
1834
+ # @return [::Gapic::Config::Method]
1835
+ #
1836
+ attr_reader :process_open_lineage_run_event
1714
1837
  ##
1715
1838
  # RPC-specific configuration for `create_process`
1716
1839
  # @return [::Gapic::Config::Method]
@@ -1794,6 +1917,8 @@ module Google
1794
1917
 
1795
1918
  # @private
1796
1919
  def initialize parent_rpcs = nil
1920
+ process_open_lineage_run_event_config = parent_rpcs.process_open_lineage_run_event if parent_rpcs.respond_to? :process_open_lineage_run_event
1921
+ @process_open_lineage_run_event = ::Gapic::Config::Method.new process_open_lineage_run_event_config
1797
1922
  create_process_config = parent_rpcs.create_process if parent_rpcs.respond_to? :create_process
1798
1923
  @create_process = ::Gapic::Config::Method.new create_process_config
1799
1924
  update_process_config = parent_rpcs.update_process if parent_rpcs.respond_to? :update_process
@@ -27,6 +27,9 @@ module Google
27
27
  module Rest
28
28
  # Service that implements Longrunning Operations API.
29
29
  class Operations
30
+ # @private
31
+ DEFAULT_ENDPOINT_TEMPLATE = "datalineage.$UNIVERSE_DOMAIN$"
32
+
30
33
  # @private
31
34
  attr_reader :operations_stub
32
35
 
@@ -61,6 +64,15 @@ module Google
61
64
  @config
62
65
  end
63
66
 
67
+ ##
68
+ # The effective universe domain
69
+ #
70
+ # @return [String]
71
+ #
72
+ def universe_domain
73
+ @operations_stub.universe_domain
74
+ end
75
+
64
76
  ##
65
77
  # Create a new Operations client object.
66
78
  #
@@ -85,8 +97,10 @@ module Google
85
97
  @quota_project_id ||= credentials.quota_project_id if credentials.respond_to? :quota_project_id
86
98
 
87
99
  @operations_stub = OperationsServiceStub.new(
88
- endpoint: @config.endpoint,
89
- credentials: credentials
100
+ endpoint: @config.endpoint,
101
+ endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
102
+ universe_domain: @config.universe_domain,
103
+ credentials: credentials
90
104
  )
91
105
 
92
106
  # Used by an LRO wrapper for some methods of this service
@@ -479,9 +493,9 @@ module Google
479
493
  # end
480
494
  #
481
495
  # @!attribute [rw] endpoint
482
- # The hostname or hostname:port of the service endpoint.
483
- # Defaults to `"datalineage.googleapis.com"`.
484
- # @return [::String]
496
+ # A custom service endpoint, as a hostname or hostname:port. The default is
497
+ # nil, indicating to use the default endpoint in the current universe domain.
498
+ # @return [::String,nil]
485
499
  # @!attribute [rw] credentials
486
500
  # Credentials to send with calls. You may provide any of the following types:
487
501
  # * (`String`) The path to a service account key file in JSON format
@@ -518,13 +532,20 @@ module Google
518
532
  # @!attribute [rw] quota_project
519
533
  # A separate project against which to charge quota.
520
534
  # @return [::String]
535
+ # @!attribute [rw] universe_domain
536
+ # The universe domain within which to make requests. This determines the
537
+ # default endpoint URL. The default value of nil uses the environment
538
+ # universe (usually the default "googleapis.com" universe).
539
+ # @return [::String,nil]
521
540
  #
522
541
  class Configuration
523
542
  extend ::Gapic::Config
524
543
 
544
+ # @private
545
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
525
546
  DEFAULT_ENDPOINT = "datalineage.googleapis.com"
526
547
 
527
- config_attr :endpoint, DEFAULT_ENDPOINT, ::String
548
+ config_attr :endpoint, nil, ::String, nil
528
549
  config_attr :credentials, nil do |value|
529
550
  allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
530
551
  allowed.any? { |klass| klass === value }
@@ -536,6 +557,7 @@ module Google
536
557
  config_attr :metadata, nil, ::Hash, nil
537
558
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
538
559
  config_attr :quota_project, nil, ::String, nil
560
+ config_attr :universe_domain, nil, ::String, nil
539
561
 
540
562
  # @private
541
563
  def initialize parent_config = nil
@@ -618,12 +640,15 @@ module Google
618
640
  # Service stub contains baseline method implementations
619
641
  # including transcoding, making the REST call, and deserialing the response.
620
642
  class OperationsServiceStub
621
- def initialize endpoint:, credentials:
643
+ def initialize endpoint:, endpoint_template:, universe_domain:, credentials:
622
644
  # These require statements are intentionally placed here to initialize
623
645
  # the REST modules only when it's required.
624
646
  require "gapic/rest"
625
647
 
626
- @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint, credentials: credentials
648
+ @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint,
649
+ endpoint_template: endpoint_template,
650
+ universe_domain: universe_domain,
651
+ credentials: credentials
627
652
  end
628
653
 
629
654
  ##
@@ -31,16 +31,66 @@ module Google
31
31
  # including transcoding, making the REST call, and deserialing the response.
32
32
  #
33
33
  class ServiceStub
34
- def initialize endpoint:, credentials:
34
+ def initialize endpoint:, endpoint_template:, universe_domain:, credentials:
35
35
  # These require statements are intentionally placed here to initialize
36
36
  # the REST modules only when it's required.
37
37
  require "gapic/rest"
38
38
 
39
- @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint, credentials: credentials,
39
+ @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint,
40
+ endpoint_template: endpoint_template,
41
+ universe_domain: universe_domain,
42
+ credentials: credentials,
40
43
  numeric_enums: true,
41
44
  raise_faraday_errors: false
42
45
  end
43
46
 
47
+ ##
48
+ # The effective universe domain
49
+ #
50
+ # @return [String]
51
+ #
52
+ def universe_domain
53
+ @client_stub.universe_domain
54
+ end
55
+
56
+ ##
57
+ # Baseline implementation for the process_open_lineage_run_event REST call
58
+ #
59
+ # @param request_pb [::Google::Cloud::DataCatalog::Lineage::V1::ProcessOpenLineageRunEventRequest]
60
+ # A request object representing the call parameters. Required.
61
+ # @param options [::Gapic::CallOptions]
62
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
63
+ #
64
+ # @yield [result, operation] Access the result along with the TransportOperation object
65
+ # @yieldparam result [::Google::Cloud::DataCatalog::Lineage::V1::ProcessOpenLineageRunEventResponse]
66
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
67
+ #
68
+ # @return [::Google::Cloud::DataCatalog::Lineage::V1::ProcessOpenLineageRunEventResponse]
69
+ # A result object deserialized from the server's reply
70
+ def process_open_lineage_run_event request_pb, options = nil
71
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
72
+
73
+ verb, uri, query_string_params, body = ServiceStub.transcode_process_open_lineage_run_event_request request_pb
74
+ query_string_params = if query_string_params.any?
75
+ query_string_params.to_h { |p| p.split "=", 2 }
76
+ else
77
+ {}
78
+ end
79
+
80
+ response = @client_stub.make_http_request(
81
+ verb,
82
+ uri: uri,
83
+ body: body || "",
84
+ params: query_string_params,
85
+ options: options
86
+ )
87
+ operation = ::Gapic::Rest::TransportOperation.new response
88
+ result = ::Google::Cloud::DataCatalog::Lineage::V1::ProcessOpenLineageRunEventResponse.decode_json response.body, ignore_unknown_fields: true
89
+
90
+ yield result, operation if block_given?
91
+ result
92
+ end
93
+
44
94
  ##
45
95
  # Baseline implementation for the create_process REST call
46
96
  #
@@ -649,6 +699,28 @@ module Google
649
699
  result
650
700
  end
651
701
 
702
+ ##
703
+ # @private
704
+ #
705
+ # GRPC transcoding helper method for the process_open_lineage_run_event REST call
706
+ #
707
+ # @param request_pb [::Google::Cloud::DataCatalog::Lineage::V1::ProcessOpenLineageRunEventRequest]
708
+ # A request object representing the call parameters. Required.
709
+ # @return [Array(String, [String, nil], Hash{String => String})]
710
+ # Uri, Body, Query string parameters
711
+ def self.transcode_process_open_lineage_run_event_request request_pb
712
+ transcoder = Gapic::Rest::GrpcTranscoder.new
713
+ .with_bindings(
714
+ uri_method: :post,
715
+ uri_template: "/v1/{parent}:processOpenLineageRunEvent",
716
+ body: "open_lineage",
717
+ matches: [
718
+ ["parent", %r{^projects/[^/]+/locations/[^/]+/?$}, false]
719
+ ]
720
+ )
721
+ transcoder.transcode request_pb
722
+ end
723
+
652
724
  ##
653
725
  # @private
654
726
  #
@@ -22,7 +22,7 @@ module Google
22
22
  module DataCatalog
23
23
  module Lineage
24
24
  module V1
25
- VERSION = "0.4.0"
25
+ VERSION = "0.6.0"
26
26
  end
27
27
  end
28
28
  end
@@ -15,7 +15,7 @@ require 'google/protobuf/struct_pb'
15
15
  require 'google/protobuf/timestamp_pb'
16
16
 
17
17
 
18
- descriptor_data = "\n1google/cloud/datacatalog/lineage/v1/lineage.proto\x12#google.cloud.datacatalog.lineage.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a#google/longrunning/operations.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a google/protobuf/field_mask.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\x81\x03\n\x07Process\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x05\x12\x19\n\x0c\x64isplay_name\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12U\n\nattributes\x18\x03 \x03(\x0b\x32<.google.cloud.datacatalog.lineage.v1.Process.AttributesEntryB\x03\xe0\x41\x01\x12@\n\x06origin\x18\x04 \x01(\x0b\x32+.google.cloud.datacatalog.lineage.v1.OriginB\x03\xe0\x41\x01\x1aI\n\x0f\x41ttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12%\n\x05value\x18\x02 \x01(\x0b\x32\x16.google.protobuf.Value:\x02\x38\x01:d\xea\x41\x61\n\"datalineage.googleapis.com/Process\x12;projects/{project}/locations/{location}/processes/{process}\"\xb5\x04\n\x03Run\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x05\x12\x19\n\x0c\x64isplay_name\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12Q\n\nattributes\x18\x03 \x03(\x0b\x32\x38.google.cloud.datacatalog.lineage.v1.Run.AttributesEntryB\x03\xe0\x41\x01\x12\x33\n\nstart_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02\x12\x31\n\x08\x65nd_time\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x01\x12\x42\n\x05state\x18\x06 \x01(\x0e\x32..google.cloud.datacatalog.lineage.v1.Run.StateB\x03\xe0\x41\x02\x1aI\n\x0f\x41ttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12%\n\x05value\x18\x02 \x01(\x0b\x32\x16.google.protobuf.Value:\x02\x38\x01\"I\n\x05State\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x0b\n\x07STARTED\x10\x01\x12\r\n\tCOMPLETED\x10\x02\x12\n\n\x06\x46\x41ILED\x10\x03\x12\x0b\n\x07\x41\x42ORTED\x10\x04:k\xea\x41h\n\x1e\x64\x61talineage.googleapis.com/Run\x12\x46projects/{project}/locations/{location}/processes/{process}/runs/{run}\"\xe3\x02\n\x0cLineageEvent\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x05\x12\x42\n\x05links\x18\x08 \x03(\x0b\x32..google.cloud.datacatalog.lineage.v1.EventLinkB\x03\xe0\x41\x01\x12\x33\n\nstart_time\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x01\x12\x31\n\x08\x65nd_time\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x01:\x93\x01\xea\x41\x8f\x01\n\'datalineage.googleapis.com/LineageEvent\x12\x64projects/{project}/locations/{location}/processes/{process}/runs/{run}/lineageEvents/{lineage_event}\"\xa1\x01\n\tEventLink\x12I\n\x06source\x18\x01 \x01(\x0b\x32\x34.google.cloud.datacatalog.lineage.v1.EntityReferenceB\x03\xe0\x41\x02\x12I\n\x06target\x18\x02 \x01(\x0b\x32\x34.google.cloud.datacatalog.lineage.v1.EntityReferenceB\x03\xe0\x41\x02\"4\n\x0f\x45ntityReference\x12!\n\x14\x66ully_qualified_name\x18\x01 \x01(\tB\x03\xe0\x41\x02\"\xda\x03\n\x11OperationMetadata\x12P\n\x05state\x18\x01 \x01(\x0e\x32<.google.cloud.datacatalog.lineage.v1.OperationMetadata.StateB\x03\xe0\x41\x03\x12X\n\x0eoperation_type\x18\x02 \x01(\x0e\x32;.google.cloud.datacatalog.lineage.v1.OperationMetadata.TypeB\x03\xe0\x41\x03\x12\x15\n\x08resource\x18\x03 \x01(\tB\x03\xe0\x41\x03\x12\x1a\n\rresource_uuid\x18\x04 \x01(\tB\x03\xe0\x41\x03\x12\x34\n\x0b\x63reate_time\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x31\n\x08\x65nd_time\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\"S\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\x0b\n\x07PENDING\x10\x01\x12\x0b\n\x07RUNNING\x10\x02\x12\r\n\tSUCCEEDED\x10\x03\x12\n\n\x06\x46\x41ILED\x10\x04\"(\n\x04Type\x12\x14\n\x10TYPE_UNSPECIFIED\x10\x00\x12\n\n\x06\x44\x45LETE\x10\x01\"\xaa\x01\n\x14\x43reateProcessRequest\x12:\n\x06parent\x18\x01 \x01(\tB*\xe0\x41\x02\xfa\x41$\x12\"datalineage.googleapis.com/Process\x12\x42\n\x07process\x18\x02 \x01(\x0b\x32,.google.cloud.datacatalog.lineage.v1.ProcessB\x03\xe0\x41\x02\x12\x12\n\nrequest_id\x18\x03 \x01(\t\"\xa2\x01\n\x14UpdateProcessRequest\x12\x42\n\x07process\x18\x01 \x01(\x0b\x32,.google.cloud.datacatalog.lineage.v1.ProcessB\x03\xe0\x41\x02\x12/\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\x12\x15\n\rallow_missing\x18\x03 \x01(\x08\"M\n\x11GetProcessRequest\x12\x38\n\x04name\x18\x01 \x01(\tB*\xe0\x41\x02\xfa\x41$\n\"datalineage.googleapis.com/Process\"y\n\x14ListProcessesRequest\x12:\n\x06parent\x18\x01 \x01(\tB*\xe0\x41\x02\xfa\x41$\x12\"datalineage.googleapis.com/Process\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\"q\n\x15ListProcessesResponse\x12?\n\tprocesses\x18\x01 \x03(\x0b\x32,.google.cloud.datacatalog.lineage.v1.Process\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"g\n\x14\x44\x65leteProcessRequest\x12\x38\n\x04name\x18\x01 \x01(\tB*\xe0\x41\x02\xfa\x41$\n\"datalineage.googleapis.com/Process\x12\x15\n\rallow_missing\x18\x02 \x01(\x08\"\x9a\x01\n\x10\x43reateRunRequest\x12\x36\n\x06parent\x18\x01 \x01(\tB&\xe0\x41\x02\xfa\x41 \x12\x1e\x64\x61talineage.googleapis.com/Run\x12:\n\x03run\x18\x02 \x01(\x0b\x32(.google.cloud.datacatalog.lineage.v1.RunB\x03\xe0\x41\x02\x12\x12\n\nrequest_id\x18\x03 \x01(\t\"\x7f\n\x10UpdateRunRequest\x12:\n\x03run\x18\x01 \x01(\x0b\x32(.google.cloud.datacatalog.lineage.v1.RunB\x03\xe0\x41\x02\x12/\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\"E\n\rGetRunRequest\x12\x34\n\x04name\x18\x01 \x01(\tB&\xe0\x41\x02\xfa\x41 \n\x1e\x64\x61talineage.googleapis.com/Run\"p\n\x0fListRunsRequest\x12\x36\n\x06parent\x18\x01 \x01(\tB&\xe0\x41\x02\xfa\x41 \x12\x1e\x64\x61talineage.googleapis.com/Run\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\"c\n\x10ListRunsResponse\x12\x36\n\x04runs\x18\x01 \x03(\x0b\x32(.google.cloud.datacatalog.lineage.v1.Run\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"_\n\x10\x44\x65leteRunRequest\x12\x34\n\x04name\x18\x01 \x01(\tB&\xe0\x41\x02\xfa\x41 \n\x1e\x64\x61talineage.googleapis.com/Run\x12\x15\n\rallow_missing\x18\x02 \x01(\x08\"\xbf\x01\n\x19\x43reateLineageEventRequest\x12?\n\x06parent\x18\x01 \x01(\tB/\xe0\x41\x02\xfa\x41)\x12\'datalineage.googleapis.com/LineageEvent\x12M\n\rlineage_event\x18\x02 \x01(\x0b\x32\x31.google.cloud.datacatalog.lineage.v1.LineageEventB\x03\xe0\x41\x02\x12\x12\n\nrequest_id\x18\x03 \x01(\t\"W\n\x16GetLineageEventRequest\x12=\n\x04name\x18\x01 \x01(\tB/\xe0\x41\x02\xfa\x41)\n\'datalineage.googleapis.com/LineageEvent\"\x82\x01\n\x18ListLineageEventsRequest\x12?\n\x06parent\x18\x01 \x01(\tB/\xe0\x41\x02\xfa\x41)\x12\'datalineage.googleapis.com/LineageEvent\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\"\x7f\n\x19ListLineageEventsResponse\x12I\n\x0elineage_events\x18\x01 \x03(\x0b\x32\x31.google.cloud.datacatalog.lineage.v1.LineageEvent\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"q\n\x19\x44\x65leteLineageEventRequest\x12=\n\x04name\x18\x01 \x01(\tB/\xe0\x41\x02\xfa\x41)\n\'datalineage.googleapis.com/LineageEvent\x12\x15\n\rallow_missing\x18\x02 \x01(\x08\"\xa7\x02\n\x12SearchLinksRequest\x12:\n\x06parent\x18\x01 \x01(\tB*\xe0\x41\x02\xfa\x41$\x12\"datalineage.googleapis.com/Process\x12K\n\x06source\x18\x04 \x01(\x0b\x32\x34.google.cloud.datacatalog.lineage.v1.EntityReferenceB\x03\xe0\x41\x01H\x00\x12K\n\x06target\x18\x05 \x01(\x0b\x32\x34.google.cloud.datacatalog.lineage.v1.EntityReferenceB\x03\xe0\x41\x01H\x00\x12\x16\n\tpage_size\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x03 \x01(\tB\x03\xe0\x41\x01\x42\n\n\x08\x63riteria\"h\n\x13SearchLinksResponse\x12\x38\n\x05links\x18\x01 \x03(\x0b\x32).google.cloud.datacatalog.lineage.v1.Link\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"\x86\x02\n\x04Link\x12\x14\n\x04name\x18\x01 \x01(\tB\x06\xe0\x41\x03\xe0\x41\x05\x12\x44\n\x06source\x18\x02 \x01(\x0b\x32\x34.google.cloud.datacatalog.lineage.v1.EntityReference\x12\x44\n\x06target\x18\x03 \x01(\x0b\x32\x34.google.cloud.datacatalog.lineage.v1.EntityReference\x12.\n\nstart_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12,\n\x08\x65nd_time\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\x98\x01\n\x1f\x42\x61tchSearchLinkProcessesRequest\x12:\n\x06parent\x18\x01 \x01(\tB*\xe0\x41\x02\xfa\x41$\x12\"datalineage.googleapis.com/Process\x12\x12\n\x05links\x18\x02 \x03(\tB\x03\xe0\x41\x02\x12\x11\n\tpage_size\x18\x03 \x01(\x05\x12\x12\n\npage_token\x18\x04 \x01(\t\"\x85\x01\n BatchSearchLinkProcessesResponse\x12H\n\rprocess_links\x18\x01 \x03(\x0b\x32\x31.google.cloud.datacatalog.lineage.v1.ProcessLinks\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"\x8d\x01\n\x0cProcessLinks\x12\x38\n\x07process\x18\x01 \x01(\tB\'\xfa\x41$\n\"datalineage.googleapis.com/Process\x12\x43\n\x05links\x18\x02 \x03(\x0b\x32\x34.google.cloud.datacatalog.lineage.v1.ProcessLinkInfo\"}\n\x0fProcessLinkInfo\x12\x0c\n\x04link\x18\x01 \x01(\t\x12.\n\nstart_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12,\n\x08\x65nd_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\xda\x01\n\x06Origin\x12K\n\x0bsource_type\x18\x01 \x01(\x0e\x32\x36.google.cloud.datacatalog.lineage.v1.Origin.SourceType\x12\x0c\n\x04name\x18\x02 \x01(\t\"u\n\nSourceType\x12\x1b\n\x17SOURCE_TYPE_UNSPECIFIED\x10\x00\x12\n\n\x06\x43USTOM\x10\x01\x12\x0c\n\x08\x42IGQUERY\x10\x02\x12\x0f\n\x0b\x44\x41TA_FUSION\x10\x03\x12\x0c\n\x08\x43OMPOSER\x10\x04\x12\x11\n\rLOOKER_STUDIO\x10\x05\x32\xa0\x1b\n\x07Lineage\x12\xc9\x01\n\rCreateProcess\x12\x39.google.cloud.datacatalog.lineage.v1.CreateProcessRequest\x1a,.google.cloud.datacatalog.lineage.v1.Process\"O\x82\xd3\xe4\x93\x02\x38\"-/v1/{parent=projects/*/locations/*}/processes:\x07process\xda\x41\x0eparent,process\x12\xd6\x01\n\rUpdateProcess\x12\x39.google.cloud.datacatalog.lineage.v1.UpdateProcessRequest\x1a,.google.cloud.datacatalog.lineage.v1.Process\"\\\x82\xd3\xe4\x93\x02@25/v1/{process.name=projects/*/locations/*/processes/*}:\x07process\xda\x41\x13process,update_mask\x12\xb0\x01\n\nGetProcess\x12\x36.google.cloud.datacatalog.lineage.v1.GetProcessRequest\x1a,.google.cloud.datacatalog.lineage.v1.Process\"<\x82\xd3\xe4\x93\x02/\x12-/v1/{name=projects/*/locations/*/processes/*}\xda\x41\x04name\x12\xc6\x01\n\rListProcesses\x12\x39.google.cloud.datacatalog.lineage.v1.ListProcessesRequest\x1a:.google.cloud.datacatalog.lineage.v1.ListProcessesResponse\">\x82\xd3\xe4\x93\x02/\x12-/v1/{parent=projects/*/locations/*}/processes\xda\x41\x06parent\x12\xf9\x01\n\rDeleteProcess\x12\x39.google.cloud.datacatalog.lineage.v1.DeleteProcessRequest\x1a\x1d.google.longrunning.Operation\"\x8d\x01\x82\xd3\xe4\x93\x02/*-/v1/{name=projects/*/locations/*/processes/*}\xda\x41\x04name\xca\x41N\n\x15google.protobuf.Empty\x12\x35google.cloud.datacatalog.lineage.v1.OperationMetadata\x12\xbc\x01\n\tCreateRun\x12\x35.google.cloud.datacatalog.lineage.v1.CreateRunRequest\x1a(.google.cloud.datacatalog.lineage.v1.Run\"N\x82\xd3\xe4\x93\x02;\"4/v1/{parent=projects/*/locations/*/processes/*}/runs:\x03run\xda\x41\nparent,run\x12\xc5\x01\n\tUpdateRun\x12\x35.google.cloud.datacatalog.lineage.v1.UpdateRunRequest\x1a(.google.cloud.datacatalog.lineage.v1.Run\"W\x82\xd3\xe4\x93\x02?28/v1/{run.name=projects/*/locations/*/processes/*/runs/*}:\x03run\xda\x41\x0frun,update_mask\x12\xab\x01\n\x06GetRun\x12\x32.google.cloud.datacatalog.lineage.v1.GetRunRequest\x1a(.google.cloud.datacatalog.lineage.v1.Run\"C\x82\xd3\xe4\x93\x02\x36\x12\x34/v1/{name=projects/*/locations/*/processes/*/runs/*}\xda\x41\x04name\x12\xbe\x01\n\x08ListRuns\x12\x34.google.cloud.datacatalog.lineage.v1.ListRunsRequest\x1a\x35.google.cloud.datacatalog.lineage.v1.ListRunsResponse\"E\x82\xd3\xe4\x93\x02\x36\x12\x34/v1/{parent=projects/*/locations/*/processes/*}/runs\xda\x41\x06parent\x12\xf8\x01\n\tDeleteRun\x12\x35.google.cloud.datacatalog.lineage.v1.DeleteRunRequest\x1a\x1d.google.longrunning.Operation\"\x94\x01\x82\xd3\xe4\x93\x02\x36*4/v1/{name=projects/*/locations/*/processes/*/runs/*}\xda\x41\x04name\xca\x41N\n\x15google.protobuf.Empty\x12\x35google.cloud.datacatalog.lineage.v1.OperationMetadata\x12\xfb\x01\n\x12\x43reateLineageEvent\x12>.google.cloud.datacatalog.lineage.v1.CreateLineageEventRequest\x1a\x31.google.cloud.datacatalog.lineage.v1.LineageEvent\"r\x82\xd3\xe4\x93\x02U\"D/v1/{parent=projects/*/locations/*/processes/*/runs/*}/lineageEvents:\rlineage_event\xda\x41\x14parent,lineage_event\x12\xd6\x01\n\x0fGetLineageEvent\x12;.google.cloud.datacatalog.lineage.v1.GetLineageEventRequest\x1a\x31.google.cloud.datacatalog.lineage.v1.LineageEvent\"S\x82\xd3\xe4\x93\x02\x46\x12\x44/v1/{name=projects/*/locations/*/processes/*/runs/*/lineageEvents/*}\xda\x41\x04name\x12\xe9\x01\n\x11ListLineageEvents\x12=.google.cloud.datacatalog.lineage.v1.ListLineageEventsRequest\x1a>.google.cloud.datacatalog.lineage.v1.ListLineageEventsResponse\"U\x82\xd3\xe4\x93\x02\x46\x12\x44/v1/{parent=projects/*/locations/*/processes/*/runs/*}/lineageEvents\xda\x41\x06parent\x12\xc1\x01\n\x12\x44\x65leteLineageEvent\x12>.google.cloud.datacatalog.lineage.v1.DeleteLineageEventRequest\x1a\x16.google.protobuf.Empty\"S\x82\xd3\xe4\x93\x02\x46*D/v1/{name=projects/*/locations/*/processes/*/runs/*/lineageEvents/*}\xda\x41\x04name\x12\xbc\x01\n\x0bSearchLinks\x12\x37.google.cloud.datacatalog.lineage.v1.SearchLinksRequest\x1a\x38.google.cloud.datacatalog.lineage.v1.SearchLinksResponse\":\x82\xd3\xe4\x93\x02\x34\"//v1/{parent=projects/*/locations/*}:searchLinks:\x01*\x12\xf0\x01\n\x18\x42\x61tchSearchLinkProcesses\x12\x44.google.cloud.datacatalog.lineage.v1.BatchSearchLinkProcessesRequest\x1a\x45.google.cloud.datacatalog.lineage.v1.BatchSearchLinkProcessesResponse\"G\x82\xd3\xe4\x93\x02\x41\"</v1/{parent=projects/*/locations/*}:batchSearchLinkProcesses:\x01*\x1aN\xca\x41\x1a\x64\x61talineage.googleapis.com\xd2\x41.https://www.googleapis.com/auth/cloud-platformB\xf2\x01\n\'com.google.cloud.datacatalog.lineage.v1B\x0cLineageProtoP\x01ZAcloud.google.com/go/datacatalog/lineage/apiv1/lineagepb;lineagepb\xaa\x02#Google.Cloud.DataCatalog.Lineage.V1\xca\x02#Google\\Cloud\\DataCatalog\\Lineage\\V1\xea\x02\'Google::Cloud::DataCatalog::Lineage::V1b\x06proto3"
18
+ descriptor_data = "\n1google/cloud/datacatalog/lineage/v1/lineage.proto\x12#google.cloud.datacatalog.lineage.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a#google/longrunning/operations.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a google/protobuf/field_mask.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\x81\x03\n\x07Process\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x05\x12\x19\n\x0c\x64isplay_name\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12U\n\nattributes\x18\x03 \x03(\x0b\x32<.google.cloud.datacatalog.lineage.v1.Process.AttributesEntryB\x03\xe0\x41\x01\x12@\n\x06origin\x18\x04 \x01(\x0b\x32+.google.cloud.datacatalog.lineage.v1.OriginB\x03\xe0\x41\x01\x1aI\n\x0f\x41ttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12%\n\x05value\x18\x02 \x01(\x0b\x32\x16.google.protobuf.Value:\x02\x38\x01:d\xea\x41\x61\n\"datalineage.googleapis.com/Process\x12;projects/{project}/locations/{location}/processes/{process}\"\xb5\x04\n\x03Run\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x05\x12\x19\n\x0c\x64isplay_name\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12Q\n\nattributes\x18\x03 \x03(\x0b\x32\x38.google.cloud.datacatalog.lineage.v1.Run.AttributesEntryB\x03\xe0\x41\x01\x12\x33\n\nstart_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02\x12\x31\n\x08\x65nd_time\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x01\x12\x42\n\x05state\x18\x06 \x01(\x0e\x32..google.cloud.datacatalog.lineage.v1.Run.StateB\x03\xe0\x41\x02\x1aI\n\x0f\x41ttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12%\n\x05value\x18\x02 \x01(\x0b\x32\x16.google.protobuf.Value:\x02\x38\x01\"I\n\x05State\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x0b\n\x07STARTED\x10\x01\x12\r\n\tCOMPLETED\x10\x02\x12\n\n\x06\x46\x41ILED\x10\x03\x12\x0b\n\x07\x41\x42ORTED\x10\x04:k\xea\x41h\n\x1e\x64\x61talineage.googleapis.com/Run\x12\x46projects/{project}/locations/{location}/processes/{process}/runs/{run}\"\xe3\x02\n\x0cLineageEvent\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x05\x12\x42\n\x05links\x18\x08 \x03(\x0b\x32..google.cloud.datacatalog.lineage.v1.EventLinkB\x03\xe0\x41\x01\x12\x33\n\nstart_time\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02\x12\x31\n\x08\x65nd_time\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x01:\x93\x01\xea\x41\x8f\x01\n\'datalineage.googleapis.com/LineageEvent\x12\x64projects/{project}/locations/{location}/processes/{process}/runs/{run}/lineageEvents/{lineage_event}\"\xa1\x01\n\tEventLink\x12I\n\x06source\x18\x01 \x01(\x0b\x32\x34.google.cloud.datacatalog.lineage.v1.EntityReferenceB\x03\xe0\x41\x02\x12I\n\x06target\x18\x02 \x01(\x0b\x32\x34.google.cloud.datacatalog.lineage.v1.EntityReferenceB\x03\xe0\x41\x02\"4\n\x0f\x45ntityReference\x12!\n\x14\x66ully_qualified_name\x18\x01 \x01(\tB\x03\xe0\x41\x02\"\xe6\x03\n\x11OperationMetadata\x12P\n\x05state\x18\x01 \x01(\x0e\x32<.google.cloud.datacatalog.lineage.v1.OperationMetadata.StateB\x03\xe0\x41\x03\x12X\n\x0eoperation_type\x18\x02 \x01(\x0e\x32;.google.cloud.datacatalog.lineage.v1.OperationMetadata.TypeB\x03\xe0\x41\x03\x12\x15\n\x08resource\x18\x03 \x01(\tB\x03\xe0\x41\x03\x12\x1a\n\rresource_uuid\x18\x04 \x01(\tB\x03\xe0\x41\x03\x12\x34\n\x0b\x63reate_time\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x31\n\x08\x65nd_time\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\"S\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\x0b\n\x07PENDING\x10\x01\x12\x0b\n\x07RUNNING\x10\x02\x12\r\n\tSUCCEEDED\x10\x03\x12\n\n\x06\x46\x41ILED\x10\x04\"4\n\x04Type\x12\x14\n\x10TYPE_UNSPECIFIED\x10\x00\x12\n\n\x06\x44\x45LETE\x10\x01\x12\n\n\x06\x43REATE\x10\x02\"\x80\x01\n!ProcessOpenLineageRunEventRequest\x12\x13\n\x06parent\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x32\n\x0copen_lineage\x18\x02 \x01(\x0b\x32\x17.google.protobuf.StructB\x03\xe0\x41\x02\x12\x12\n\nrequest_id\x18\x03 \x01(\t\"\xd6\x01\n\"ProcessOpenLineageRunEventResponse\x12\x38\n\x07process\x18\x01 \x01(\tB\'\xfa\x41$\n\"datalineage.googleapis.com/Process\x12\x30\n\x03run\x18\x02 \x01(\tB#\xfa\x41 \n\x1e\x64\x61talineage.googleapis.com/Run\x12\x44\n\x0elineage_events\x18\x03 \x03(\tB,\xfa\x41)\n\'datalineage.googleapis.com/LineageEvent\"\xaa\x01\n\x14\x43reateProcessRequest\x12:\n\x06parent\x18\x01 \x01(\tB*\xe0\x41\x02\xfa\x41$\x12\"datalineage.googleapis.com/Process\x12\x42\n\x07process\x18\x02 \x01(\x0b\x32,.google.cloud.datacatalog.lineage.v1.ProcessB\x03\xe0\x41\x02\x12\x12\n\nrequest_id\x18\x03 \x01(\t\"\xa2\x01\n\x14UpdateProcessRequest\x12\x42\n\x07process\x18\x01 \x01(\x0b\x32,.google.cloud.datacatalog.lineage.v1.ProcessB\x03\xe0\x41\x02\x12/\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\x12\x15\n\rallow_missing\x18\x03 \x01(\x08\"M\n\x11GetProcessRequest\x12\x38\n\x04name\x18\x01 \x01(\tB*\xe0\x41\x02\xfa\x41$\n\"datalineage.googleapis.com/Process\"y\n\x14ListProcessesRequest\x12:\n\x06parent\x18\x01 \x01(\tB*\xe0\x41\x02\xfa\x41$\x12\"datalineage.googleapis.com/Process\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\"q\n\x15ListProcessesResponse\x12?\n\tprocesses\x18\x01 \x03(\x0b\x32,.google.cloud.datacatalog.lineage.v1.Process\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"g\n\x14\x44\x65leteProcessRequest\x12\x38\n\x04name\x18\x01 \x01(\tB*\xe0\x41\x02\xfa\x41$\n\"datalineage.googleapis.com/Process\x12\x15\n\rallow_missing\x18\x02 \x01(\x08\"\x9a\x01\n\x10\x43reateRunRequest\x12\x36\n\x06parent\x18\x01 \x01(\tB&\xe0\x41\x02\xfa\x41 \x12\x1e\x64\x61talineage.googleapis.com/Run\x12:\n\x03run\x18\x02 \x01(\x0b\x32(.google.cloud.datacatalog.lineage.v1.RunB\x03\xe0\x41\x02\x12\x12\n\nrequest_id\x18\x03 \x01(\t\"\x96\x01\n\x10UpdateRunRequest\x12:\n\x03run\x18\x01 \x01(\x0b\x32(.google.cloud.datacatalog.lineage.v1.RunB\x03\xe0\x41\x02\x12/\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\x12\x15\n\rallow_missing\x18\x03 \x01(\x08\"E\n\rGetRunRequest\x12\x34\n\x04name\x18\x01 \x01(\tB&\xe0\x41\x02\xfa\x41 \n\x1e\x64\x61talineage.googleapis.com/Run\"p\n\x0fListRunsRequest\x12\x36\n\x06parent\x18\x01 \x01(\tB&\xe0\x41\x02\xfa\x41 \x12\x1e\x64\x61talineage.googleapis.com/Run\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\"c\n\x10ListRunsResponse\x12\x36\n\x04runs\x18\x01 \x03(\x0b\x32(.google.cloud.datacatalog.lineage.v1.Run\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"_\n\x10\x44\x65leteRunRequest\x12\x34\n\x04name\x18\x01 \x01(\tB&\xe0\x41\x02\xfa\x41 \n\x1e\x64\x61talineage.googleapis.com/Run\x12\x15\n\rallow_missing\x18\x02 \x01(\x08\"\xbf\x01\n\x19\x43reateLineageEventRequest\x12?\n\x06parent\x18\x01 \x01(\tB/\xe0\x41\x02\xfa\x41)\x12\'datalineage.googleapis.com/LineageEvent\x12M\n\rlineage_event\x18\x02 \x01(\x0b\x32\x31.google.cloud.datacatalog.lineage.v1.LineageEventB\x03\xe0\x41\x02\x12\x12\n\nrequest_id\x18\x03 \x01(\t\"W\n\x16GetLineageEventRequest\x12=\n\x04name\x18\x01 \x01(\tB/\xe0\x41\x02\xfa\x41)\n\'datalineage.googleapis.com/LineageEvent\"\x82\x01\n\x18ListLineageEventsRequest\x12?\n\x06parent\x18\x01 \x01(\tB/\xe0\x41\x02\xfa\x41)\x12\'datalineage.googleapis.com/LineageEvent\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\"\x7f\n\x19ListLineageEventsResponse\x12I\n\x0elineage_events\x18\x01 \x03(\x0b\x32\x31.google.cloud.datacatalog.lineage.v1.LineageEvent\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"q\n\x19\x44\x65leteLineageEventRequest\x12=\n\x04name\x18\x01 \x01(\tB/\xe0\x41\x02\xfa\x41)\n\'datalineage.googleapis.com/LineageEvent\x12\x15\n\rallow_missing\x18\x02 \x01(\x08\"\xa7\x02\n\x12SearchLinksRequest\x12:\n\x06parent\x18\x01 \x01(\tB*\xe0\x41\x02\xfa\x41$\x12\"datalineage.googleapis.com/Process\x12K\n\x06source\x18\x04 \x01(\x0b\x32\x34.google.cloud.datacatalog.lineage.v1.EntityReferenceB\x03\xe0\x41\x01H\x00\x12K\n\x06target\x18\x05 \x01(\x0b\x32\x34.google.cloud.datacatalog.lineage.v1.EntityReferenceB\x03\xe0\x41\x01H\x00\x12\x16\n\tpage_size\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x03 \x01(\tB\x03\xe0\x41\x01\x42\n\n\x08\x63riteria\"h\n\x13SearchLinksResponse\x12\x38\n\x05links\x18\x01 \x03(\x0b\x32).google.cloud.datacatalog.lineage.v1.Link\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"\x86\x02\n\x04Link\x12\x14\n\x04name\x18\x01 \x01(\tB\x06\xe0\x41\x03\xe0\x41\x05\x12\x44\n\x06source\x18\x02 \x01(\x0b\x32\x34.google.cloud.datacatalog.lineage.v1.EntityReference\x12\x44\n\x06target\x18\x03 \x01(\x0b\x32\x34.google.cloud.datacatalog.lineage.v1.EntityReference\x12.\n\nstart_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12,\n\x08\x65nd_time\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\x98\x01\n\x1f\x42\x61tchSearchLinkProcessesRequest\x12:\n\x06parent\x18\x01 \x01(\tB*\xe0\x41\x02\xfa\x41$\x12\"datalineage.googleapis.com/Process\x12\x12\n\x05links\x18\x02 \x03(\tB\x03\xe0\x41\x02\x12\x11\n\tpage_size\x18\x03 \x01(\x05\x12\x12\n\npage_token\x18\x04 \x01(\t\"\x85\x01\n BatchSearchLinkProcessesResponse\x12H\n\rprocess_links\x18\x01 \x03(\x0b\x32\x31.google.cloud.datacatalog.lineage.v1.ProcessLinks\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"\x8d\x01\n\x0cProcessLinks\x12\x38\n\x07process\x18\x01 \x01(\tB\'\xfa\x41$\n\"datalineage.googleapis.com/Process\x12\x43\n\x05links\x18\x02 \x03(\x0b\x32\x34.google.cloud.datacatalog.lineage.v1.ProcessLinkInfo\"}\n\x0fProcessLinkInfo\x12\x0c\n\x04link\x18\x01 \x01(\t\x12.\n\nstart_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12,\n\x08\x65nd_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\xe9\x01\n\x06Origin\x12K\n\x0bsource_type\x18\x01 \x01(\x0e\x32\x36.google.cloud.datacatalog.lineage.v1.Origin.SourceType\x12\x0c\n\x04name\x18\x02 \x01(\t\"\x83\x01\n\nSourceType\x12\x1b\n\x17SOURCE_TYPE_UNSPECIFIED\x10\x00\x12\n\n\x06\x43USTOM\x10\x01\x12\x0c\n\x08\x42IGQUERY\x10\x02\x12\x0f\n\x0b\x44\x41TA_FUSION\x10\x03\x12\x0c\n\x08\x43OMPOSER\x10\x04\x12\x11\n\rLOOKER_STUDIO\x10\x05\x12\x0c\n\x08\x44\x41TAPROC\x10\x06\x32\xbc\x1d\n\x07Lineage\x12\x99\x02\n\x1aProcessOpenLineageRunEvent\x12\x46.google.cloud.datacatalog.lineage.v1.ProcessOpenLineageRunEventRequest\x1aG.google.cloud.datacatalog.lineage.v1.ProcessOpenLineageRunEventResponse\"j\x82\xd3\xe4\x93\x02N\">/v1/{parent=projects/*/locations/*}:processOpenLineageRunEvent:\x0copen_lineage\xda\x41\x13parent,open_lineage\x12\xc9\x01\n\rCreateProcess\x12\x39.google.cloud.datacatalog.lineage.v1.CreateProcessRequest\x1a,.google.cloud.datacatalog.lineage.v1.Process\"O\x82\xd3\xe4\x93\x02\x38\"-/v1/{parent=projects/*/locations/*}/processes:\x07process\xda\x41\x0eparent,process\x12\xd6\x01\n\rUpdateProcess\x12\x39.google.cloud.datacatalog.lineage.v1.UpdateProcessRequest\x1a,.google.cloud.datacatalog.lineage.v1.Process\"\\\x82\xd3\xe4\x93\x02@25/v1/{process.name=projects/*/locations/*/processes/*}:\x07process\xda\x41\x13process,update_mask\x12\xb0\x01\n\nGetProcess\x12\x36.google.cloud.datacatalog.lineage.v1.GetProcessRequest\x1a,.google.cloud.datacatalog.lineage.v1.Process\"<\x82\xd3\xe4\x93\x02/\x12-/v1/{name=projects/*/locations/*/processes/*}\xda\x41\x04name\x12\xc6\x01\n\rListProcesses\x12\x39.google.cloud.datacatalog.lineage.v1.ListProcessesRequest\x1a:.google.cloud.datacatalog.lineage.v1.ListProcessesResponse\">\x82\xd3\xe4\x93\x02/\x12-/v1/{parent=projects/*/locations/*}/processes\xda\x41\x06parent\x12\xf9\x01\n\rDeleteProcess\x12\x39.google.cloud.datacatalog.lineage.v1.DeleteProcessRequest\x1a\x1d.google.longrunning.Operation\"\x8d\x01\x82\xd3\xe4\x93\x02/*-/v1/{name=projects/*/locations/*/processes/*}\xda\x41\x04name\xca\x41N\n\x15google.protobuf.Empty\x12\x35google.cloud.datacatalog.lineage.v1.OperationMetadata\x12\xbc\x01\n\tCreateRun\x12\x35.google.cloud.datacatalog.lineage.v1.CreateRunRequest\x1a(.google.cloud.datacatalog.lineage.v1.Run\"N\x82\xd3\xe4\x93\x02;\"4/v1/{parent=projects/*/locations/*/processes/*}/runs:\x03run\xda\x41\nparent,run\x12\xc5\x01\n\tUpdateRun\x12\x35.google.cloud.datacatalog.lineage.v1.UpdateRunRequest\x1a(.google.cloud.datacatalog.lineage.v1.Run\"W\x82\xd3\xe4\x93\x02?28/v1/{run.name=projects/*/locations/*/processes/*/runs/*}:\x03run\xda\x41\x0frun,update_mask\x12\xab\x01\n\x06GetRun\x12\x32.google.cloud.datacatalog.lineage.v1.GetRunRequest\x1a(.google.cloud.datacatalog.lineage.v1.Run\"C\x82\xd3\xe4\x93\x02\x36\x12\x34/v1/{name=projects/*/locations/*/processes/*/runs/*}\xda\x41\x04name\x12\xbe\x01\n\x08ListRuns\x12\x34.google.cloud.datacatalog.lineage.v1.ListRunsRequest\x1a\x35.google.cloud.datacatalog.lineage.v1.ListRunsResponse\"E\x82\xd3\xe4\x93\x02\x36\x12\x34/v1/{parent=projects/*/locations/*/processes/*}/runs\xda\x41\x06parent\x12\xf8\x01\n\tDeleteRun\x12\x35.google.cloud.datacatalog.lineage.v1.DeleteRunRequest\x1a\x1d.google.longrunning.Operation\"\x94\x01\x82\xd3\xe4\x93\x02\x36*4/v1/{name=projects/*/locations/*/processes/*/runs/*}\xda\x41\x04name\xca\x41N\n\x15google.protobuf.Empty\x12\x35google.cloud.datacatalog.lineage.v1.OperationMetadata\x12\xfb\x01\n\x12\x43reateLineageEvent\x12>.google.cloud.datacatalog.lineage.v1.CreateLineageEventRequest\x1a\x31.google.cloud.datacatalog.lineage.v1.LineageEvent\"r\x82\xd3\xe4\x93\x02U\"D/v1/{parent=projects/*/locations/*/processes/*/runs/*}/lineageEvents:\rlineage_event\xda\x41\x14parent,lineage_event\x12\xd6\x01\n\x0fGetLineageEvent\x12;.google.cloud.datacatalog.lineage.v1.GetLineageEventRequest\x1a\x31.google.cloud.datacatalog.lineage.v1.LineageEvent\"S\x82\xd3\xe4\x93\x02\x46\x12\x44/v1/{name=projects/*/locations/*/processes/*/runs/*/lineageEvents/*}\xda\x41\x04name\x12\xe9\x01\n\x11ListLineageEvents\x12=.google.cloud.datacatalog.lineage.v1.ListLineageEventsRequest\x1a>.google.cloud.datacatalog.lineage.v1.ListLineageEventsResponse\"U\x82\xd3\xe4\x93\x02\x46\x12\x44/v1/{parent=projects/*/locations/*/processes/*/runs/*}/lineageEvents\xda\x41\x06parent\x12\xc1\x01\n\x12\x44\x65leteLineageEvent\x12>.google.cloud.datacatalog.lineage.v1.DeleteLineageEventRequest\x1a\x16.google.protobuf.Empty\"S\x82\xd3\xe4\x93\x02\x46*D/v1/{name=projects/*/locations/*/processes/*/runs/*/lineageEvents/*}\xda\x41\x04name\x12\xbc\x01\n\x0bSearchLinks\x12\x37.google.cloud.datacatalog.lineage.v1.SearchLinksRequest\x1a\x38.google.cloud.datacatalog.lineage.v1.SearchLinksResponse\":\x82\xd3\xe4\x93\x02\x34\"//v1/{parent=projects/*/locations/*}:searchLinks:\x01*\x12\xf0\x01\n\x18\x42\x61tchSearchLinkProcesses\x12\x44.google.cloud.datacatalog.lineage.v1.BatchSearchLinkProcessesRequest\x1a\x45.google.cloud.datacatalog.lineage.v1.BatchSearchLinkProcessesResponse\"G\x82\xd3\xe4\x93\x02\x41\"</v1/{parent=projects/*/locations/*}:batchSearchLinkProcesses:\x01*\x1aN\xca\x41\x1a\x64\x61talineage.googleapis.com\xd2\x41.https://www.googleapis.com/auth/cloud-platformB\xf2\x01\n\'com.google.cloud.datacatalog.lineage.v1B\x0cLineageProtoP\x01ZAcloud.google.com/go/datacatalog/lineage/apiv1/lineagepb;lineagepb\xaa\x02#Google.Cloud.DataCatalog.Lineage.V1\xca\x02#Google\\Cloud\\DataCatalog\\Lineage\\V1\xea\x02\'Google::Cloud::DataCatalog::Lineage::V1b\x06proto3"
19
19
 
20
20
  pool = Google::Protobuf::DescriptorPool.generated_pool
21
21
 
@@ -58,6 +58,8 @@ module Google
58
58
  OperationMetadata = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datacatalog.lineage.v1.OperationMetadata").msgclass
59
59
  OperationMetadata::State = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datacatalog.lineage.v1.OperationMetadata.State").enummodule
60
60
  OperationMetadata::Type = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datacatalog.lineage.v1.OperationMetadata.Type").enummodule
61
+ ProcessOpenLineageRunEventRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datacatalog.lineage.v1.ProcessOpenLineageRunEventRequest").msgclass
62
+ ProcessOpenLineageRunEventResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datacatalog.lineage.v1.ProcessOpenLineageRunEventResponse").msgclass
61
63
  CreateProcessRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datacatalog.lineage.v1.CreateProcessRequest").msgclass
62
64
  UpdateProcessRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datacatalog.lineage.v1.UpdateProcessRequest").msgclass
63
65
  GetProcessRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datacatalog.lineage.v1.GetProcessRequest").msgclass
@@ -37,6 +37,11 @@ module Google
37
37
  self.unmarshal_class_method = :decode
38
38
  self.service_name = 'google.cloud.datacatalog.lineage.v1.Lineage'
39
39
 
40
+ # Creates new lineage events together with their parents: process and run.
41
+ # Updates the process and run if they already exist.
42
+ # Mapped from Open Lineage specification:
43
+ # https://github.com/OpenLineage/OpenLineage/blob/main/spec/OpenLineage.json.
44
+ rpc :ProcessOpenLineageRunEvent, ::Google::Cloud::DataCatalog::Lineage::V1::ProcessOpenLineageRunEventRequest, ::Google::Cloud::DataCatalog::Lineage::V1::ProcessOpenLineageRunEventResponse
40
45
  # Creates a new process.
41
46
  rpc :CreateProcess, ::Google::Cloud::DataCatalog::Lineage::V1::CreateProcessRequest, ::Google::Cloud::DataCatalog::Lineage::V1::Process
42
47
  # Updates a process.
@@ -21,6 +21,7 @@ module Google
21
21
  module Api
22
22
  # Required information for every language.
23
23
  # @!attribute [rw] reference_docs_uri
24
+ # @deprecated This field is deprecated and may be removed in the next major version update.
24
25
  # @return [::String]
25
26
  # Link to automatically generated reference documentation. Example:
26
27
  # https://cloud.google.com/nodejs/docs/reference/asset/latest
@@ -304,6 +305,19 @@ module Google
304
305
  # seconds: 360 # 6 minutes
305
306
  # total_poll_timeout:
306
307
  # seconds: 54000 # 90 minutes
308
+ # @!attribute [rw] auto_populated_fields
309
+ # @return [::Array<::String>]
310
+ # List of top-level fields of the request message, that should be
311
+ # automatically populated by the client libraries based on their
312
+ # (google.api.field_info).format. Currently supported format: UUID4.
313
+ #
314
+ # Example of a YAML configuration:
315
+ #
316
+ # publishing:
317
+ # method_settings:
318
+ # - selector: google.example.v1.ExampleService.CreateExample
319
+ # auto_populated_fields:
320
+ # - request_id
307
321
  class MethodSettings
308
322
  include ::Google::Protobuf::MessageExts
309
323
  extend ::Google::Protobuf::MessageExts::ClassMethods