google-cloud-ai_platform-v1 0.32.0 → 0.34.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (67) hide show
  1. checksums.yaml +4 -4
  2. data/lib/google/cloud/ai_platform/v1/dataset_service/client.rb +516 -0
  3. data/lib/google/cloud/ai_platform/v1/dataset_service/paths.rb +21 -0
  4. data/lib/google/cloud/ai_platform/v1/feature_online_store_admin_service/client.rb +1796 -0
  5. data/lib/google/cloud/ai_platform/v1/feature_online_store_admin_service/credentials.rb +47 -0
  6. data/lib/google/cloud/ai_platform/v1/feature_online_store_admin_service/operations.rb +787 -0
  7. data/lib/google/cloud/ai_platform/v1/feature_online_store_admin_service/paths.rb +111 -0
  8. data/lib/google/cloud/ai_platform/v1/feature_online_store_admin_service.rb +51 -0
  9. data/lib/google/cloud/ai_platform/v1/feature_online_store_service/client.rb +431 -0
  10. data/lib/google/cloud/ai_platform/v1/feature_online_store_service/credentials.rb +47 -0
  11. data/lib/google/cloud/ai_platform/v1/feature_online_store_service/paths.rb +54 -0
  12. data/lib/google/cloud/ai_platform/v1/feature_online_store_service.rb +47 -0
  13. data/lib/google/cloud/ai_platform/v1/feature_registry_service/client.rb +1498 -0
  14. data/lib/google/cloud/ai_platform/v1/feature_registry_service/credentials.rb +47 -0
  15. data/lib/google/cloud/ai_platform/v1/feature_registry_service/operations.rb +787 -0
  16. data/lib/google/cloud/ai_platform/v1/feature_registry_service/paths.rb +139 -0
  17. data/lib/google/cloud/ai_platform/v1/feature_registry_service.rb +51 -0
  18. data/lib/google/cloud/ai_platform/v1/featurestore_service/client.rb +20 -7
  19. data/lib/google/cloud/ai_platform/v1/featurestore_service/paths.rb +53 -8
  20. data/lib/google/cloud/ai_platform/v1/job_service/paths.rb +17 -0
  21. data/lib/google/cloud/ai_platform/v1/pipeline_service/client.rb +1 -1
  22. data/lib/google/cloud/ai_platform/v1/tensorboard_service/client.rb +2 -2
  23. data/lib/google/cloud/ai_platform/v1/version.rb +1 -1
  24. data/lib/google/cloud/ai_platform/v1.rb +3 -0
  25. data/lib/google/cloud/aiplatform/v1/custom_job_pb.rb +1 -1
  26. data/lib/google/cloud/aiplatform/v1/dataset_service_pb.rb +9 -1
  27. data/lib/google/cloud/aiplatform/v1/dataset_service_services_pb.rb +10 -0
  28. data/lib/google/cloud/aiplatform/v1/dataset_version_pb.rb +47 -0
  29. data/lib/google/cloud/aiplatform/v1/feature_group_pb.rb +50 -0
  30. data/lib/google/cloud/aiplatform/v1/feature_online_store_admin_service_pb.rb +79 -0
  31. data/lib/google/cloud/aiplatform/v1/feature_online_store_admin_service_services_pb.rb +71 -0
  32. data/lib/google/cloud/aiplatform/v1/feature_online_store_pb.rb +50 -0
  33. data/lib/google/cloud/aiplatform/v1/feature_online_store_service_pb.rb +56 -0
  34. data/lib/google/cloud/aiplatform/v1/feature_online_store_service_services_pb.rb +44 -0
  35. data/lib/google/cloud/aiplatform/v1/feature_pb.rb +1 -1
  36. data/lib/google/cloud/aiplatform/v1/feature_registry_service_pb.rb +66 -0
  37. data/lib/google/cloud/aiplatform/v1/feature_registry_service_services_pb.rb +64 -0
  38. data/lib/google/cloud/aiplatform/v1/feature_view_pb.rb +51 -0
  39. data/lib/google/cloud/aiplatform/v1/feature_view_sync_pb.rb +51 -0
  40. data/lib/google/cloud/aiplatform/v1/index_pb.rb +3 -1
  41. data/lib/google/cloud/aiplatform/v1/machine_resources_pb.rb +2 -1
  42. data/lib/google/cloud/aiplatform/v1/model_monitoring_pb.rb +1 -1
  43. data/lib/google/cloud/aiplatform/v1/prediction_service_pb.rb +3 -1
  44. data/lib/google/cloud/aiplatform/v1/study_pb.rb +5 -1
  45. data/proto_docs/google/cloud/aiplatform/v1/custom_job.rb +6 -0
  46. data/proto_docs/google/cloud/aiplatform/v1/dataset_service.rb +99 -2
  47. data/proto_docs/google/cloud/aiplatform/v1/dataset_version.rb +48 -0
  48. data/proto_docs/google/cloud/aiplatform/v1/endpoint.rb +1 -1
  49. data/proto_docs/google/cloud/aiplatform/v1/feature.rb +21 -10
  50. data/proto_docs/google/cloud/aiplatform/v1/feature_group.rb +91 -0
  51. data/proto_docs/google/cloud/aiplatform/v1/feature_online_store.rb +124 -0
  52. data/proto_docs/google/cloud/aiplatform/v1/feature_online_store_admin_service.rb +458 -0
  53. data/proto_docs/google/cloud/aiplatform/v1/feature_online_store_service.rb +102 -0
  54. data/proto_docs/google/cloud/aiplatform/v1/feature_registry_service.rb +208 -0
  55. data/proto_docs/google/cloud/aiplatform/v1/feature_view.rb +131 -0
  56. data/proto_docs/google/cloud/aiplatform/v1/feature_view_sync.rb +48 -0
  57. data/proto_docs/google/cloud/aiplatform/v1/featurestore_service.rb +32 -7
  58. data/proto_docs/google/cloud/aiplatform/v1/index.rb +58 -5
  59. data/proto_docs/google/cloud/aiplatform/v1/index_endpoint.rb +9 -5
  60. data/proto_docs/google/cloud/aiplatform/v1/machine_resources.rb +21 -0
  61. data/proto_docs/google/cloud/aiplatform/v1/model_monitoring.rb +5 -0
  62. data/proto_docs/google/cloud/aiplatform/v1/pipeline_job.rb +3 -1
  63. data/proto_docs/google/cloud/aiplatform/v1/pipeline_service.rb +1 -1
  64. data/proto_docs/google/cloud/aiplatform/v1/prediction_service.rb +28 -0
  65. data/proto_docs/google/cloud/aiplatform/v1/study.rb +75 -0
  66. data/proto_docs/google/cloud/aiplatform/v1/tensorboard_service.rb +2 -2
  67. metadata +35 -2
@@ -0,0 +1,1796 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2023 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+ require "google/cloud/errors"
20
+ require "google/cloud/aiplatform/v1/feature_online_store_admin_service_pb"
21
+ require "google/cloud/location"
22
+ require "google/iam/v1"
23
+
24
+ module Google
25
+ module Cloud
26
+ module AIPlatform
27
+ module V1
28
+ module FeatureOnlineStoreAdminService
29
+ ##
30
+ # Client for the FeatureOnlineStoreAdminService service.
31
+ #
32
+ # The service that handles CRUD and List for resources for
33
+ # FeatureOnlineStore.
34
+ #
35
+ class Client
36
+ include Paths
37
+
38
+ # @private
39
+ attr_reader :feature_online_store_admin_service_stub
40
+
41
+ ##
42
+ # Configure the FeatureOnlineStoreAdminService Client class.
43
+ #
44
+ # See {::Google::Cloud::AIPlatform::V1::FeatureOnlineStoreAdminService::Client::Configuration}
45
+ # for a description of the configuration fields.
46
+ #
47
+ # @example
48
+ #
49
+ # # Modify the configuration for all FeatureOnlineStoreAdminService clients
50
+ # ::Google::Cloud::AIPlatform::V1::FeatureOnlineStoreAdminService::Client.configure do |config|
51
+ # config.timeout = 10.0
52
+ # end
53
+ #
54
+ # @yield [config] Configure the Client client.
55
+ # @yieldparam config [Client::Configuration]
56
+ #
57
+ # @return [Client::Configuration]
58
+ #
59
+ def self.configure
60
+ @configure ||= begin
61
+ namespace = ["Google", "Cloud", "AIPlatform", "V1"]
62
+ parent_config = while namespace.any?
63
+ parent_name = namespace.join "::"
64
+ parent_const = const_get parent_name
65
+ break parent_const.configure if parent_const.respond_to? :configure
66
+ namespace.pop
67
+ end
68
+ default_config = Client::Configuration.new parent_config
69
+
70
+ default_config
71
+ end
72
+ yield @configure if block_given?
73
+ @configure
74
+ end
75
+
76
+ ##
77
+ # Configure the FeatureOnlineStoreAdminService Client instance.
78
+ #
79
+ # The configuration is set to the derived mode, meaning that values can be changed,
80
+ # but structural changes (adding new fields, etc.) are not allowed. Structural changes
81
+ # should be made on {Client.configure}.
82
+ #
83
+ # See {::Google::Cloud::AIPlatform::V1::FeatureOnlineStoreAdminService::Client::Configuration}
84
+ # for a description of the configuration fields.
85
+ #
86
+ # @yield [config] Configure the Client client.
87
+ # @yieldparam config [Client::Configuration]
88
+ #
89
+ # @return [Client::Configuration]
90
+ #
91
+ def configure
92
+ yield @config if block_given?
93
+ @config
94
+ end
95
+
96
+ ##
97
+ # Create a new FeatureOnlineStoreAdminService client object.
98
+ #
99
+ # @example
100
+ #
101
+ # # Create a client using the default configuration
102
+ # client = ::Google::Cloud::AIPlatform::V1::FeatureOnlineStoreAdminService::Client.new
103
+ #
104
+ # # Create a client using a custom configuration
105
+ # client = ::Google::Cloud::AIPlatform::V1::FeatureOnlineStoreAdminService::Client.new do |config|
106
+ # config.timeout = 10.0
107
+ # end
108
+ #
109
+ # @yield [config] Configure the FeatureOnlineStoreAdminService client.
110
+ # @yieldparam config [Client::Configuration]
111
+ #
112
+ def initialize
113
+ # These require statements are intentionally placed here to initialize
114
+ # the gRPC module only when it's required.
115
+ # See https://github.com/googleapis/toolkit/issues/446
116
+ require "gapic/grpc"
117
+ require "google/cloud/aiplatform/v1/feature_online_store_admin_service_services_pb"
118
+
119
+ # Create the configuration object
120
+ @config = Configuration.new Client.configure
121
+
122
+ # Yield the configuration if needed
123
+ yield @config if block_given?
124
+
125
+ # Create credentials
126
+ credentials = @config.credentials
127
+ # Use self-signed JWT if the endpoint is unchanged from default,
128
+ # but only if the default endpoint does not have a region prefix.
129
+ enable_self_signed_jwt = @config.endpoint == Configuration::DEFAULT_ENDPOINT &&
130
+ !@config.endpoint.split(".").first.include?("-")
131
+ credentials ||= Credentials.default scope: @config.scope,
132
+ enable_self_signed_jwt: enable_self_signed_jwt
133
+ if credentials.is_a?(::String) || credentials.is_a?(::Hash)
134
+ credentials = Credentials.new credentials, scope: @config.scope
135
+ end
136
+ @quota_project_id = @config.quota_project
137
+ @quota_project_id ||= credentials.quota_project_id if credentials.respond_to? :quota_project_id
138
+
139
+ @operations_client = Operations.new do |config|
140
+ config.credentials = credentials
141
+ config.quota_project = @quota_project_id
142
+ config.endpoint = @config.endpoint
143
+ end
144
+
145
+ @location_client = Google::Cloud::Location::Locations::Client.new do |config|
146
+ config.credentials = credentials
147
+ config.quota_project = @quota_project_id
148
+ config.endpoint = @config.endpoint
149
+ end
150
+
151
+ @iam_policy_client = Google::Iam::V1::IAMPolicy::Client.new do |config|
152
+ config.credentials = credentials
153
+ config.quota_project = @quota_project_id
154
+ config.endpoint = @config.endpoint
155
+ end
156
+
157
+ @feature_online_store_admin_service_stub = ::Gapic::ServiceStub.new(
158
+ ::Google::Cloud::AIPlatform::V1::FeatureOnlineStoreAdminService::Stub,
159
+ credentials: credentials,
160
+ endpoint: @config.endpoint,
161
+ channel_args: @config.channel_args,
162
+ interceptors: @config.interceptors,
163
+ channel_pool_config: @config.channel_pool
164
+ )
165
+ end
166
+
167
+ ##
168
+ # Get the associated client for long-running operations.
169
+ #
170
+ # @return [::Google::Cloud::AIPlatform::V1::FeatureOnlineStoreAdminService::Operations]
171
+ #
172
+ attr_reader :operations_client
173
+
174
+ ##
175
+ # Get the associated client for mix-in of the Locations.
176
+ #
177
+ # @return [Google::Cloud::Location::Locations::Client]
178
+ #
179
+ attr_reader :location_client
180
+
181
+ ##
182
+ # Get the associated client for mix-in of the IAMPolicy.
183
+ #
184
+ # @return [Google::Iam::V1::IAMPolicy::Client]
185
+ #
186
+ attr_reader :iam_policy_client
187
+
188
+ # Service calls
189
+
190
+ ##
191
+ # Creates a new FeatureOnlineStore in a given project and location.
192
+ #
193
+ # @overload create_feature_online_store(request, options = nil)
194
+ # Pass arguments to `create_feature_online_store` via a request object, either of type
195
+ # {::Google::Cloud::AIPlatform::V1::CreateFeatureOnlineStoreRequest} or an equivalent Hash.
196
+ #
197
+ # @param request [::Google::Cloud::AIPlatform::V1::CreateFeatureOnlineStoreRequest, ::Hash]
198
+ # A request object representing the call parameters. Required. To specify no
199
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
200
+ # @param options [::Gapic::CallOptions, ::Hash]
201
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
202
+ #
203
+ # @overload create_feature_online_store(parent: nil, feature_online_store: nil, feature_online_store_id: nil)
204
+ # Pass arguments to `create_feature_online_store` via keyword arguments. Note that at
205
+ # least one keyword argument is required. To specify no parameters, or to keep all
206
+ # the default parameter values, pass an empty Hash as a request object (see above).
207
+ #
208
+ # @param parent [::String]
209
+ # Required. The resource name of the Location to create FeatureOnlineStores.
210
+ # Format:
211
+ # `projects/{project}/locations/{location}'`
212
+ # @param feature_online_store [::Google::Cloud::AIPlatform::V1::FeatureOnlineStore, ::Hash]
213
+ # Required. The FeatureOnlineStore to create.
214
+ # @param feature_online_store_id [::String]
215
+ # Required. The ID to use for this FeatureOnlineStore, which will become the
216
+ # final component of the FeatureOnlineStore's resource name.
217
+ #
218
+ # This value may be up to 60 characters, and valid characters are
219
+ # `[a-z0-9_]`. The first character cannot be a number.
220
+ #
221
+ # The value must be unique within the project and location.
222
+ #
223
+ # @yield [response, operation] Access the result along with the RPC operation
224
+ # @yieldparam response [::Gapic::Operation]
225
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
226
+ #
227
+ # @return [::Gapic::Operation]
228
+ #
229
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
230
+ #
231
+ # @example Basic example
232
+ # require "google/cloud/ai_platform/v1"
233
+ #
234
+ # # Create a client object. The client can be reused for multiple calls.
235
+ # client = Google::Cloud::AIPlatform::V1::FeatureOnlineStoreAdminService::Client.new
236
+ #
237
+ # # Create a request. To set request fields, pass in keyword arguments.
238
+ # request = Google::Cloud::AIPlatform::V1::CreateFeatureOnlineStoreRequest.new
239
+ #
240
+ # # Call the create_feature_online_store method.
241
+ # result = client.create_feature_online_store request
242
+ #
243
+ # # The returned object is of type Gapic::Operation. You can use it to
244
+ # # check the status of an operation, cancel it, or wait for results.
245
+ # # Here is how to wait for a response.
246
+ # result.wait_until_done! timeout: 60
247
+ # if result.response?
248
+ # p result.response
249
+ # else
250
+ # puts "No response received."
251
+ # end
252
+ #
253
+ def create_feature_online_store request, options = nil
254
+ raise ::ArgumentError, "request must be provided" if request.nil?
255
+
256
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::AIPlatform::V1::CreateFeatureOnlineStoreRequest
257
+
258
+ # Converts hash and nil to an options object
259
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
260
+
261
+ # Customize the options with defaults
262
+ metadata = @config.rpcs.create_feature_online_store.metadata.to_h
263
+
264
+ # Set x-goog-api-client and x-goog-user-project headers
265
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
266
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
267
+ gapic_version: ::Google::Cloud::AIPlatform::V1::VERSION
268
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
269
+
270
+ header_params = {}
271
+ if request.parent
272
+ header_params["parent"] = request.parent
273
+ end
274
+
275
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
276
+ metadata[:"x-goog-request-params"] ||= request_params_header
277
+
278
+ options.apply_defaults timeout: @config.rpcs.create_feature_online_store.timeout,
279
+ metadata: metadata,
280
+ retry_policy: @config.rpcs.create_feature_online_store.retry_policy
281
+
282
+ options.apply_defaults timeout: @config.timeout,
283
+ metadata: @config.metadata,
284
+ retry_policy: @config.retry_policy
285
+
286
+ @feature_online_store_admin_service_stub.call_rpc :create_feature_online_store, request, options: options do |response, operation|
287
+ response = ::Gapic::Operation.new response, @operations_client, options: options
288
+ yield response, operation if block_given?
289
+ return response
290
+ end
291
+ rescue ::GRPC::BadStatus => e
292
+ raise ::Google::Cloud::Error.from_error(e)
293
+ end
294
+
295
+ ##
296
+ # Gets details of a single FeatureOnlineStore.
297
+ #
298
+ # @overload get_feature_online_store(request, options = nil)
299
+ # Pass arguments to `get_feature_online_store` via a request object, either of type
300
+ # {::Google::Cloud::AIPlatform::V1::GetFeatureOnlineStoreRequest} or an equivalent Hash.
301
+ #
302
+ # @param request [::Google::Cloud::AIPlatform::V1::GetFeatureOnlineStoreRequest, ::Hash]
303
+ # A request object representing the call parameters. Required. To specify no
304
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
305
+ # @param options [::Gapic::CallOptions, ::Hash]
306
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
307
+ #
308
+ # @overload get_feature_online_store(name: nil)
309
+ # Pass arguments to `get_feature_online_store` via keyword arguments. Note that at
310
+ # least one keyword argument is required. To specify no parameters, or to keep all
311
+ # the default parameter values, pass an empty Hash as a request object (see above).
312
+ #
313
+ # @param name [::String]
314
+ # Required. The name of the FeatureOnlineStore resource.
315
+ #
316
+ # @yield [response, operation] Access the result along with the RPC operation
317
+ # @yieldparam response [::Google::Cloud::AIPlatform::V1::FeatureOnlineStore]
318
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
319
+ #
320
+ # @return [::Google::Cloud::AIPlatform::V1::FeatureOnlineStore]
321
+ #
322
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
323
+ #
324
+ # @example Basic example
325
+ # require "google/cloud/ai_platform/v1"
326
+ #
327
+ # # Create a client object. The client can be reused for multiple calls.
328
+ # client = Google::Cloud::AIPlatform::V1::FeatureOnlineStoreAdminService::Client.new
329
+ #
330
+ # # Create a request. To set request fields, pass in keyword arguments.
331
+ # request = Google::Cloud::AIPlatform::V1::GetFeatureOnlineStoreRequest.new
332
+ #
333
+ # # Call the get_feature_online_store method.
334
+ # result = client.get_feature_online_store request
335
+ #
336
+ # # The returned object is of type Google::Cloud::AIPlatform::V1::FeatureOnlineStore.
337
+ # p result
338
+ #
339
+ def get_feature_online_store request, options = nil
340
+ raise ::ArgumentError, "request must be provided" if request.nil?
341
+
342
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::AIPlatform::V1::GetFeatureOnlineStoreRequest
343
+
344
+ # Converts hash and nil to an options object
345
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
346
+
347
+ # Customize the options with defaults
348
+ metadata = @config.rpcs.get_feature_online_store.metadata.to_h
349
+
350
+ # Set x-goog-api-client and x-goog-user-project headers
351
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
352
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
353
+ gapic_version: ::Google::Cloud::AIPlatform::V1::VERSION
354
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
355
+
356
+ header_params = {}
357
+ if request.name
358
+ header_params["name"] = request.name
359
+ end
360
+
361
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
362
+ metadata[:"x-goog-request-params"] ||= request_params_header
363
+
364
+ options.apply_defaults timeout: @config.rpcs.get_feature_online_store.timeout,
365
+ metadata: metadata,
366
+ retry_policy: @config.rpcs.get_feature_online_store.retry_policy
367
+
368
+ options.apply_defaults timeout: @config.timeout,
369
+ metadata: @config.metadata,
370
+ retry_policy: @config.retry_policy
371
+
372
+ @feature_online_store_admin_service_stub.call_rpc :get_feature_online_store, request, options: options do |response, operation|
373
+ yield response, operation if block_given?
374
+ return response
375
+ end
376
+ rescue ::GRPC::BadStatus => e
377
+ raise ::Google::Cloud::Error.from_error(e)
378
+ end
379
+
380
+ ##
381
+ # Lists FeatureOnlineStores in a given project and location.
382
+ #
383
+ # @overload list_feature_online_stores(request, options = nil)
384
+ # Pass arguments to `list_feature_online_stores` via a request object, either of type
385
+ # {::Google::Cloud::AIPlatform::V1::ListFeatureOnlineStoresRequest} or an equivalent Hash.
386
+ #
387
+ # @param request [::Google::Cloud::AIPlatform::V1::ListFeatureOnlineStoresRequest, ::Hash]
388
+ # A request object representing the call parameters. Required. To specify no
389
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
390
+ # @param options [::Gapic::CallOptions, ::Hash]
391
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
392
+ #
393
+ # @overload list_feature_online_stores(parent: nil, filter: nil, page_size: nil, page_token: nil, order_by: nil)
394
+ # Pass arguments to `list_feature_online_stores` via keyword arguments. Note that at
395
+ # least one keyword argument is required. To specify no parameters, or to keep all
396
+ # the default parameter values, pass an empty Hash as a request object (see above).
397
+ #
398
+ # @param parent [::String]
399
+ # Required. The resource name of the Location to list FeatureOnlineStores.
400
+ # Format:
401
+ # `projects/{project}/locations/{location}`
402
+ # @param filter [::String]
403
+ # Lists the FeatureOnlineStores that match the filter expression. The
404
+ # following fields are supported:
405
+ #
406
+ # * `create_time`: Supports `=`, `!=`, `<`, `>`, `<=`, and `>=` comparisons.
407
+ # Values must be
408
+ # in RFC 3339 format.
409
+ # * `update_time`: Supports `=`, `!=`, `<`, `>`, `<=`, and `>=` comparisons.
410
+ # Values must be
411
+ # in RFC 3339 format.
412
+ # * `labels`: Supports key-value equality and key presence.
413
+ #
414
+ # Examples:
415
+ #
416
+ # * `create_time > "2020-01-01" OR update_time > "2020-01-01"`
417
+ # FeatureOnlineStores created or updated after 2020-01-01.
418
+ # * `labels.env = "prod"`
419
+ # FeatureOnlineStores with label "env" set to "prod".
420
+ # @param page_size [::Integer]
421
+ # The maximum number of FeatureOnlineStores to return. The service may return
422
+ # fewer than this value. If unspecified, at most 100 FeatureOnlineStores will
423
+ # be returned. The maximum value is 100; any value greater than 100 will be
424
+ # coerced to 100.
425
+ # @param page_token [::String]
426
+ # A page token, received from a previous
427
+ # {::Google::Cloud::AIPlatform::V1::FeatureOnlineStoreAdminService::Client#list_feature_online_stores FeatureOnlineStoreAdminService.ListFeatureOnlineStores}
428
+ # call. Provide this to retrieve the subsequent page.
429
+ #
430
+ # When paginating, all other parameters provided to
431
+ # {::Google::Cloud::AIPlatform::V1::FeatureOnlineStoreAdminService::Client#list_feature_online_stores FeatureOnlineStoreAdminService.ListFeatureOnlineStores}
432
+ # must match the call that provided the page token.
433
+ # @param order_by [::String]
434
+ # A comma-separated list of fields to order by, sorted in ascending order.
435
+ # Use "desc" after a field name for descending.
436
+ # Supported Fields:
437
+ #
438
+ # * `create_time`
439
+ # * `update_time`
440
+ #
441
+ # @yield [response, operation] Access the result along with the RPC operation
442
+ # @yieldparam response [::Gapic::PagedEnumerable<::Google::Cloud::AIPlatform::V1::FeatureOnlineStore>]
443
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
444
+ #
445
+ # @return [::Gapic::PagedEnumerable<::Google::Cloud::AIPlatform::V1::FeatureOnlineStore>]
446
+ #
447
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
448
+ #
449
+ # @example Basic example
450
+ # require "google/cloud/ai_platform/v1"
451
+ #
452
+ # # Create a client object. The client can be reused for multiple calls.
453
+ # client = Google::Cloud::AIPlatform::V1::FeatureOnlineStoreAdminService::Client.new
454
+ #
455
+ # # Create a request. To set request fields, pass in keyword arguments.
456
+ # request = Google::Cloud::AIPlatform::V1::ListFeatureOnlineStoresRequest.new
457
+ #
458
+ # # Call the list_feature_online_stores method.
459
+ # result = client.list_feature_online_stores request
460
+ #
461
+ # # The returned object is of type Gapic::PagedEnumerable. You can iterate
462
+ # # over elements, and API calls will be issued to fetch pages as needed.
463
+ # result.each do |item|
464
+ # # Each element is of type ::Google::Cloud::AIPlatform::V1::FeatureOnlineStore.
465
+ # p item
466
+ # end
467
+ #
468
+ def list_feature_online_stores request, options = nil
469
+ raise ::ArgumentError, "request must be provided" if request.nil?
470
+
471
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::AIPlatform::V1::ListFeatureOnlineStoresRequest
472
+
473
+ # Converts hash and nil to an options object
474
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
475
+
476
+ # Customize the options with defaults
477
+ metadata = @config.rpcs.list_feature_online_stores.metadata.to_h
478
+
479
+ # Set x-goog-api-client and x-goog-user-project headers
480
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
481
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
482
+ gapic_version: ::Google::Cloud::AIPlatform::V1::VERSION
483
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
484
+
485
+ header_params = {}
486
+ if request.parent
487
+ header_params["parent"] = request.parent
488
+ end
489
+
490
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
491
+ metadata[:"x-goog-request-params"] ||= request_params_header
492
+
493
+ options.apply_defaults timeout: @config.rpcs.list_feature_online_stores.timeout,
494
+ metadata: metadata,
495
+ retry_policy: @config.rpcs.list_feature_online_stores.retry_policy
496
+
497
+ options.apply_defaults timeout: @config.timeout,
498
+ metadata: @config.metadata,
499
+ retry_policy: @config.retry_policy
500
+
501
+ @feature_online_store_admin_service_stub.call_rpc :list_feature_online_stores, request, options: options do |response, operation|
502
+ response = ::Gapic::PagedEnumerable.new @feature_online_store_admin_service_stub, :list_feature_online_stores, request, response, operation, options
503
+ yield response, operation if block_given?
504
+ return response
505
+ end
506
+ rescue ::GRPC::BadStatus => e
507
+ raise ::Google::Cloud::Error.from_error(e)
508
+ end
509
+
510
+ ##
511
+ # Updates the parameters of a single FeatureOnlineStore.
512
+ #
513
+ # @overload update_feature_online_store(request, options = nil)
514
+ # Pass arguments to `update_feature_online_store` via a request object, either of type
515
+ # {::Google::Cloud::AIPlatform::V1::UpdateFeatureOnlineStoreRequest} or an equivalent Hash.
516
+ #
517
+ # @param request [::Google::Cloud::AIPlatform::V1::UpdateFeatureOnlineStoreRequest, ::Hash]
518
+ # A request object representing the call parameters. Required. To specify no
519
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
520
+ # @param options [::Gapic::CallOptions, ::Hash]
521
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
522
+ #
523
+ # @overload update_feature_online_store(feature_online_store: nil, update_mask: nil)
524
+ # Pass arguments to `update_feature_online_store` via keyword arguments. Note that at
525
+ # least one keyword argument is required. To specify no parameters, or to keep all
526
+ # the default parameter values, pass an empty Hash as a request object (see above).
527
+ #
528
+ # @param feature_online_store [::Google::Cloud::AIPlatform::V1::FeatureOnlineStore, ::Hash]
529
+ # Required. The FeatureOnlineStore's `name` field is used to identify the
530
+ # FeatureOnlineStore to be updated. Format:
531
+ # `projects/{project}/locations/{location}/featureOnlineStores/{feature_online_store}`
532
+ # @param update_mask [::Google::Protobuf::FieldMask, ::Hash]
533
+ # Field mask is used to specify the fields to be overwritten in the
534
+ # FeatureOnlineStore resource by the update.
535
+ # The fields specified in the update_mask are relative to the resource, not
536
+ # the full request. A field will be overwritten if it is in the mask. If the
537
+ # user does not provide a mask then only the non-empty fields present in the
538
+ # request will be overwritten. Set the update_mask to `*` to override all
539
+ # fields.
540
+ #
541
+ # Updatable fields:
542
+ #
543
+ # * `big_query_source`
544
+ # * `labels`
545
+ # * `sync_config`
546
+ #
547
+ # @yield [response, operation] Access the result along with the RPC operation
548
+ # @yieldparam response [::Gapic::Operation]
549
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
550
+ #
551
+ # @return [::Gapic::Operation]
552
+ #
553
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
554
+ #
555
+ # @example Basic example
556
+ # require "google/cloud/ai_platform/v1"
557
+ #
558
+ # # Create a client object. The client can be reused for multiple calls.
559
+ # client = Google::Cloud::AIPlatform::V1::FeatureOnlineStoreAdminService::Client.new
560
+ #
561
+ # # Create a request. To set request fields, pass in keyword arguments.
562
+ # request = Google::Cloud::AIPlatform::V1::UpdateFeatureOnlineStoreRequest.new
563
+ #
564
+ # # Call the update_feature_online_store method.
565
+ # result = client.update_feature_online_store request
566
+ #
567
+ # # The returned object is of type Gapic::Operation. You can use it to
568
+ # # check the status of an operation, cancel it, or wait for results.
569
+ # # Here is how to wait for a response.
570
+ # result.wait_until_done! timeout: 60
571
+ # if result.response?
572
+ # p result.response
573
+ # else
574
+ # puts "No response received."
575
+ # end
576
+ #
577
+ def update_feature_online_store request, options = nil
578
+ raise ::ArgumentError, "request must be provided" if request.nil?
579
+
580
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::AIPlatform::V1::UpdateFeatureOnlineStoreRequest
581
+
582
+ # Converts hash and nil to an options object
583
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
584
+
585
+ # Customize the options with defaults
586
+ metadata = @config.rpcs.update_feature_online_store.metadata.to_h
587
+
588
+ # Set x-goog-api-client and x-goog-user-project headers
589
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
590
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
591
+ gapic_version: ::Google::Cloud::AIPlatform::V1::VERSION
592
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
593
+
594
+ header_params = {}
595
+ if request.feature_online_store&.name
596
+ header_params["feature_online_store.name"] = request.feature_online_store.name
597
+ end
598
+
599
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
600
+ metadata[:"x-goog-request-params"] ||= request_params_header
601
+
602
+ options.apply_defaults timeout: @config.rpcs.update_feature_online_store.timeout,
603
+ metadata: metadata,
604
+ retry_policy: @config.rpcs.update_feature_online_store.retry_policy
605
+
606
+ options.apply_defaults timeout: @config.timeout,
607
+ metadata: @config.metadata,
608
+ retry_policy: @config.retry_policy
609
+
610
+ @feature_online_store_admin_service_stub.call_rpc :update_feature_online_store, request, options: options do |response, operation|
611
+ response = ::Gapic::Operation.new response, @operations_client, options: options
612
+ yield response, operation if block_given?
613
+ return response
614
+ end
615
+ rescue ::GRPC::BadStatus => e
616
+ raise ::Google::Cloud::Error.from_error(e)
617
+ end
618
+
619
+ ##
620
+ # Deletes a single FeatureOnlineStore. The FeatureOnlineStore must not
621
+ # contain any FeatureViews.
622
+ #
623
+ # @overload delete_feature_online_store(request, options = nil)
624
+ # Pass arguments to `delete_feature_online_store` via a request object, either of type
625
+ # {::Google::Cloud::AIPlatform::V1::DeleteFeatureOnlineStoreRequest} or an equivalent Hash.
626
+ #
627
+ # @param request [::Google::Cloud::AIPlatform::V1::DeleteFeatureOnlineStoreRequest, ::Hash]
628
+ # A request object representing the call parameters. Required. To specify no
629
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
630
+ # @param options [::Gapic::CallOptions, ::Hash]
631
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
632
+ #
633
+ # @overload delete_feature_online_store(name: nil, force: nil)
634
+ # Pass arguments to `delete_feature_online_store` via keyword arguments. Note that at
635
+ # least one keyword argument is required. To specify no parameters, or to keep all
636
+ # the default parameter values, pass an empty Hash as a request object (see above).
637
+ #
638
+ # @param name [::String]
639
+ # Required. The name of the FeatureOnlineStore to be deleted.
640
+ # Format:
641
+ # `projects/{project}/locations/{location}/featureOnlineStores/{feature_online_store}`
642
+ # @param force [::Boolean]
643
+ # If set to true, any FeatureViews and Features for this FeatureOnlineStore
644
+ # will also be deleted. (Otherwise, the request will only work if the
645
+ # FeatureOnlineStore has no FeatureViews.)
646
+ #
647
+ # @yield [response, operation] Access the result along with the RPC operation
648
+ # @yieldparam response [::Gapic::Operation]
649
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
650
+ #
651
+ # @return [::Gapic::Operation]
652
+ #
653
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
654
+ #
655
+ # @example Basic example
656
+ # require "google/cloud/ai_platform/v1"
657
+ #
658
+ # # Create a client object. The client can be reused for multiple calls.
659
+ # client = Google::Cloud::AIPlatform::V1::FeatureOnlineStoreAdminService::Client.new
660
+ #
661
+ # # Create a request. To set request fields, pass in keyword arguments.
662
+ # request = Google::Cloud::AIPlatform::V1::DeleteFeatureOnlineStoreRequest.new
663
+ #
664
+ # # Call the delete_feature_online_store method.
665
+ # result = client.delete_feature_online_store request
666
+ #
667
+ # # The returned object is of type Gapic::Operation. You can use it to
668
+ # # check the status of an operation, cancel it, or wait for results.
669
+ # # Here is how to wait for a response.
670
+ # result.wait_until_done! timeout: 60
671
+ # if result.response?
672
+ # p result.response
673
+ # else
674
+ # puts "No response received."
675
+ # end
676
+ #
677
+ def delete_feature_online_store request, options = nil
678
+ raise ::ArgumentError, "request must be provided" if request.nil?
679
+
680
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::AIPlatform::V1::DeleteFeatureOnlineStoreRequest
681
+
682
+ # Converts hash and nil to an options object
683
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
684
+
685
+ # Customize the options with defaults
686
+ metadata = @config.rpcs.delete_feature_online_store.metadata.to_h
687
+
688
+ # Set x-goog-api-client and x-goog-user-project headers
689
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
690
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
691
+ gapic_version: ::Google::Cloud::AIPlatform::V1::VERSION
692
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
693
+
694
+ header_params = {}
695
+ if request.name
696
+ header_params["name"] = request.name
697
+ end
698
+
699
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
700
+ metadata[:"x-goog-request-params"] ||= request_params_header
701
+
702
+ options.apply_defaults timeout: @config.rpcs.delete_feature_online_store.timeout,
703
+ metadata: metadata,
704
+ retry_policy: @config.rpcs.delete_feature_online_store.retry_policy
705
+
706
+ options.apply_defaults timeout: @config.timeout,
707
+ metadata: @config.metadata,
708
+ retry_policy: @config.retry_policy
709
+
710
+ @feature_online_store_admin_service_stub.call_rpc :delete_feature_online_store, request, options: options do |response, operation|
711
+ response = ::Gapic::Operation.new response, @operations_client, options: options
712
+ yield response, operation if block_given?
713
+ return response
714
+ end
715
+ rescue ::GRPC::BadStatus => e
716
+ raise ::Google::Cloud::Error.from_error(e)
717
+ end
718
+
719
+ ##
720
+ # Creates a new FeatureView in a given FeatureOnlineStore.
721
+ #
722
+ # @overload create_feature_view(request, options = nil)
723
+ # Pass arguments to `create_feature_view` via a request object, either of type
724
+ # {::Google::Cloud::AIPlatform::V1::CreateFeatureViewRequest} or an equivalent Hash.
725
+ #
726
+ # @param request [::Google::Cloud::AIPlatform::V1::CreateFeatureViewRequest, ::Hash]
727
+ # A request object representing the call parameters. Required. To specify no
728
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
729
+ # @param options [::Gapic::CallOptions, ::Hash]
730
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
731
+ #
732
+ # @overload create_feature_view(parent: nil, feature_view: nil, feature_view_id: nil, run_sync_immediately: nil)
733
+ # Pass arguments to `create_feature_view` via keyword arguments. Note that at
734
+ # least one keyword argument is required. To specify no parameters, or to keep all
735
+ # the default parameter values, pass an empty Hash as a request object (see above).
736
+ #
737
+ # @param parent [::String]
738
+ # Required. The resource name of the FeatureOnlineStore to create
739
+ # FeatureViews. Format:
740
+ # `projects/{project}/locations/{location}/featureOnlineStores/{feature_online_store}`
741
+ # @param feature_view [::Google::Cloud::AIPlatform::V1::FeatureView, ::Hash]
742
+ # Required. The FeatureView to create.
743
+ # @param feature_view_id [::String]
744
+ # Required. The ID to use for the FeatureView, which will become the final
745
+ # component of the FeatureView's resource name.
746
+ #
747
+ # This value may be up to 60 characters, and valid characters are
748
+ # `[a-z0-9_]`. The first character cannot be a number.
749
+ #
750
+ # The value must be unique within a FeatureOnlineStore.
751
+ # @param run_sync_immediately [::Boolean]
752
+ # Immutable. If set to true, one on demand sync will be run immediately,
753
+ # regardless whether the
754
+ # {::Google::Cloud::AIPlatform::V1::FeatureView#sync_config FeatureView.sync_config}
755
+ # is configured or not.
756
+ #
757
+ # @yield [response, operation] Access the result along with the RPC operation
758
+ # @yieldparam response [::Gapic::Operation]
759
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
760
+ #
761
+ # @return [::Gapic::Operation]
762
+ #
763
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
764
+ #
765
+ # @example Basic example
766
+ # require "google/cloud/ai_platform/v1"
767
+ #
768
+ # # Create a client object. The client can be reused for multiple calls.
769
+ # client = Google::Cloud::AIPlatform::V1::FeatureOnlineStoreAdminService::Client.new
770
+ #
771
+ # # Create a request. To set request fields, pass in keyword arguments.
772
+ # request = Google::Cloud::AIPlatform::V1::CreateFeatureViewRequest.new
773
+ #
774
+ # # Call the create_feature_view method.
775
+ # result = client.create_feature_view request
776
+ #
777
+ # # The returned object is of type Gapic::Operation. You can use it to
778
+ # # check the status of an operation, cancel it, or wait for results.
779
+ # # Here is how to wait for a response.
780
+ # result.wait_until_done! timeout: 60
781
+ # if result.response?
782
+ # p result.response
783
+ # else
784
+ # puts "No response received."
785
+ # end
786
+ #
787
+ def create_feature_view request, options = nil
788
+ raise ::ArgumentError, "request must be provided" if request.nil?
789
+
790
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::AIPlatform::V1::CreateFeatureViewRequest
791
+
792
+ # Converts hash and nil to an options object
793
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
794
+
795
+ # Customize the options with defaults
796
+ metadata = @config.rpcs.create_feature_view.metadata.to_h
797
+
798
+ # Set x-goog-api-client and x-goog-user-project headers
799
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
800
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
801
+ gapic_version: ::Google::Cloud::AIPlatform::V1::VERSION
802
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
803
+
804
+ header_params = {}
805
+ if request.parent
806
+ header_params["parent"] = request.parent
807
+ end
808
+
809
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
810
+ metadata[:"x-goog-request-params"] ||= request_params_header
811
+
812
+ options.apply_defaults timeout: @config.rpcs.create_feature_view.timeout,
813
+ metadata: metadata,
814
+ retry_policy: @config.rpcs.create_feature_view.retry_policy
815
+
816
+ options.apply_defaults timeout: @config.timeout,
817
+ metadata: @config.metadata,
818
+ retry_policy: @config.retry_policy
819
+
820
+ @feature_online_store_admin_service_stub.call_rpc :create_feature_view, request, options: options do |response, operation|
821
+ response = ::Gapic::Operation.new response, @operations_client, options: options
822
+ yield response, operation if block_given?
823
+ return response
824
+ end
825
+ rescue ::GRPC::BadStatus => e
826
+ raise ::Google::Cloud::Error.from_error(e)
827
+ end
828
+
829
+ ##
830
+ # Gets details of a single FeatureView.
831
+ #
832
+ # @overload get_feature_view(request, options = nil)
833
+ # Pass arguments to `get_feature_view` via a request object, either of type
834
+ # {::Google::Cloud::AIPlatform::V1::GetFeatureViewRequest} or an equivalent Hash.
835
+ #
836
+ # @param request [::Google::Cloud::AIPlatform::V1::GetFeatureViewRequest, ::Hash]
837
+ # A request object representing the call parameters. Required. To specify no
838
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
839
+ # @param options [::Gapic::CallOptions, ::Hash]
840
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
841
+ #
842
+ # @overload get_feature_view(name: nil)
843
+ # Pass arguments to `get_feature_view` via keyword arguments. Note that at
844
+ # least one keyword argument is required. To specify no parameters, or to keep all
845
+ # the default parameter values, pass an empty Hash as a request object (see above).
846
+ #
847
+ # @param name [::String]
848
+ # Required. The name of the FeatureView resource.
849
+ # Format:
850
+ # `projects/{project}/locations/{location}/featureOnlineStores/{feature_online_store}/featureViews/{feature_view}`
851
+ #
852
+ # @yield [response, operation] Access the result along with the RPC operation
853
+ # @yieldparam response [::Google::Cloud::AIPlatform::V1::FeatureView]
854
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
855
+ #
856
+ # @return [::Google::Cloud::AIPlatform::V1::FeatureView]
857
+ #
858
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
859
+ #
860
+ # @example Basic example
861
+ # require "google/cloud/ai_platform/v1"
862
+ #
863
+ # # Create a client object. The client can be reused for multiple calls.
864
+ # client = Google::Cloud::AIPlatform::V1::FeatureOnlineStoreAdminService::Client.new
865
+ #
866
+ # # Create a request. To set request fields, pass in keyword arguments.
867
+ # request = Google::Cloud::AIPlatform::V1::GetFeatureViewRequest.new
868
+ #
869
+ # # Call the get_feature_view method.
870
+ # result = client.get_feature_view request
871
+ #
872
+ # # The returned object is of type Google::Cloud::AIPlatform::V1::FeatureView.
873
+ # p result
874
+ #
875
+ def get_feature_view request, options = nil
876
+ raise ::ArgumentError, "request must be provided" if request.nil?
877
+
878
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::AIPlatform::V1::GetFeatureViewRequest
879
+
880
+ # Converts hash and nil to an options object
881
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
882
+
883
+ # Customize the options with defaults
884
+ metadata = @config.rpcs.get_feature_view.metadata.to_h
885
+
886
+ # Set x-goog-api-client and x-goog-user-project headers
887
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
888
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
889
+ gapic_version: ::Google::Cloud::AIPlatform::V1::VERSION
890
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
891
+
892
+ header_params = {}
893
+ if request.name
894
+ header_params["name"] = request.name
895
+ end
896
+
897
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
898
+ metadata[:"x-goog-request-params"] ||= request_params_header
899
+
900
+ options.apply_defaults timeout: @config.rpcs.get_feature_view.timeout,
901
+ metadata: metadata,
902
+ retry_policy: @config.rpcs.get_feature_view.retry_policy
903
+
904
+ options.apply_defaults timeout: @config.timeout,
905
+ metadata: @config.metadata,
906
+ retry_policy: @config.retry_policy
907
+
908
+ @feature_online_store_admin_service_stub.call_rpc :get_feature_view, request, options: options do |response, operation|
909
+ yield response, operation if block_given?
910
+ return response
911
+ end
912
+ rescue ::GRPC::BadStatus => e
913
+ raise ::Google::Cloud::Error.from_error(e)
914
+ end
915
+
916
+ ##
917
+ # Lists FeatureViews in a given FeatureOnlineStore.
918
+ #
919
+ # @overload list_feature_views(request, options = nil)
920
+ # Pass arguments to `list_feature_views` via a request object, either of type
921
+ # {::Google::Cloud::AIPlatform::V1::ListFeatureViewsRequest} or an equivalent Hash.
922
+ #
923
+ # @param request [::Google::Cloud::AIPlatform::V1::ListFeatureViewsRequest, ::Hash]
924
+ # A request object representing the call parameters. Required. To specify no
925
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
926
+ # @param options [::Gapic::CallOptions, ::Hash]
927
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
928
+ #
929
+ # @overload list_feature_views(parent: nil, filter: nil, page_size: nil, page_token: nil, order_by: nil)
930
+ # Pass arguments to `list_feature_views` via keyword arguments. Note that at
931
+ # least one keyword argument is required. To specify no parameters, or to keep all
932
+ # the default parameter values, pass an empty Hash as a request object (see above).
933
+ #
934
+ # @param parent [::String]
935
+ # Required. The resource name of the FeatureOnlineStore to list FeatureViews.
936
+ # Format:
937
+ # `projects/{project}/locations/{location}/featureOnlineStores/{feature_online_store}`
938
+ # @param filter [::String]
939
+ # Lists the FeatureViews that match the filter expression. The following
940
+ # filters are supported:
941
+ #
942
+ # * `create_time`: Supports `=`, `!=`, `<`, `>`, `>=`, and `<=` comparisons.
943
+ # Values must be in RFC 3339 format.
944
+ # * `update_time`: Supports `=`, `!=`, `<`, `>`, `>=`, and `<=` comparisons.
945
+ # Values must be in RFC 3339 format.
946
+ # * `labels`: Supports key-value equality as well as key presence.
947
+ #
948
+ # Examples:
949
+ #
950
+ # * `create_time > \"2020-01-31T15:30:00.000000Z\" OR
951
+ # update_time > \"2020-01-31T15:30:00.000000Z\"` --> FeatureViews
952
+ # created or updated after 2020-01-31T15:30:00.000000Z.
953
+ # * `labels.active = yes AND labels.env = prod` --> FeatureViews having both
954
+ # (active: yes) and (env: prod) labels.
955
+ # * `labels.env: *` --> Any FeatureView which has a label with 'env' as the
956
+ # key.
957
+ # @param page_size [::Integer]
958
+ # The maximum number of FeatureViews to return. The service may return fewer
959
+ # than this value. If unspecified, at most 1000 FeatureViews will be
960
+ # returned. The maximum value is 1000; any value greater than 1000 will be
961
+ # coerced to 1000.
962
+ # @param page_token [::String]
963
+ # A page token, received from a previous
964
+ # {::Google::Cloud::AIPlatform::V1::FeatureOnlineStoreAdminService::Client#list_feature_views FeatureOnlineStoreAdminService.ListFeatureViews}
965
+ # call. Provide this to retrieve the subsequent page.
966
+ #
967
+ # When paginating, all other parameters provided to
968
+ # {::Google::Cloud::AIPlatform::V1::FeatureOnlineStoreAdminService::Client#list_feature_views FeatureOnlineStoreAdminService.ListFeatureViews}
969
+ # must match the call that provided the page token.
970
+ # @param order_by [::String]
971
+ # A comma-separated list of fields to order by, sorted in ascending order.
972
+ # Use "desc" after a field name for descending.
973
+ #
974
+ # Supported fields:
975
+ #
976
+ # * `feature_view_id`
977
+ # * `create_time`
978
+ # * `update_time`
979
+ #
980
+ # @yield [response, operation] Access the result along with the RPC operation
981
+ # @yieldparam response [::Gapic::PagedEnumerable<::Google::Cloud::AIPlatform::V1::FeatureView>]
982
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
983
+ #
984
+ # @return [::Gapic::PagedEnumerable<::Google::Cloud::AIPlatform::V1::FeatureView>]
985
+ #
986
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
987
+ #
988
+ # @example Basic example
989
+ # require "google/cloud/ai_platform/v1"
990
+ #
991
+ # # Create a client object. The client can be reused for multiple calls.
992
+ # client = Google::Cloud::AIPlatform::V1::FeatureOnlineStoreAdminService::Client.new
993
+ #
994
+ # # Create a request. To set request fields, pass in keyword arguments.
995
+ # request = Google::Cloud::AIPlatform::V1::ListFeatureViewsRequest.new
996
+ #
997
+ # # Call the list_feature_views method.
998
+ # result = client.list_feature_views request
999
+ #
1000
+ # # The returned object is of type Gapic::PagedEnumerable. You can iterate
1001
+ # # over elements, and API calls will be issued to fetch pages as needed.
1002
+ # result.each do |item|
1003
+ # # Each element is of type ::Google::Cloud::AIPlatform::V1::FeatureView.
1004
+ # p item
1005
+ # end
1006
+ #
1007
+ def list_feature_views request, options = nil
1008
+ raise ::ArgumentError, "request must be provided" if request.nil?
1009
+
1010
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::AIPlatform::V1::ListFeatureViewsRequest
1011
+
1012
+ # Converts hash and nil to an options object
1013
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1014
+
1015
+ # Customize the options with defaults
1016
+ metadata = @config.rpcs.list_feature_views.metadata.to_h
1017
+
1018
+ # Set x-goog-api-client and x-goog-user-project headers
1019
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1020
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1021
+ gapic_version: ::Google::Cloud::AIPlatform::V1::VERSION
1022
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1023
+
1024
+ header_params = {}
1025
+ if request.parent
1026
+ header_params["parent"] = request.parent
1027
+ end
1028
+
1029
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1030
+ metadata[:"x-goog-request-params"] ||= request_params_header
1031
+
1032
+ options.apply_defaults timeout: @config.rpcs.list_feature_views.timeout,
1033
+ metadata: metadata,
1034
+ retry_policy: @config.rpcs.list_feature_views.retry_policy
1035
+
1036
+ options.apply_defaults timeout: @config.timeout,
1037
+ metadata: @config.metadata,
1038
+ retry_policy: @config.retry_policy
1039
+
1040
+ @feature_online_store_admin_service_stub.call_rpc :list_feature_views, request, options: options do |response, operation|
1041
+ response = ::Gapic::PagedEnumerable.new @feature_online_store_admin_service_stub, :list_feature_views, request, response, operation, options
1042
+ yield response, operation if block_given?
1043
+ return response
1044
+ end
1045
+ rescue ::GRPC::BadStatus => e
1046
+ raise ::Google::Cloud::Error.from_error(e)
1047
+ end
1048
+
1049
+ ##
1050
+ # Updates the parameters of a single FeatureView.
1051
+ #
1052
+ # @overload update_feature_view(request, options = nil)
1053
+ # Pass arguments to `update_feature_view` via a request object, either of type
1054
+ # {::Google::Cloud::AIPlatform::V1::UpdateFeatureViewRequest} or an equivalent Hash.
1055
+ #
1056
+ # @param request [::Google::Cloud::AIPlatform::V1::UpdateFeatureViewRequest, ::Hash]
1057
+ # A request object representing the call parameters. Required. To specify no
1058
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1059
+ # @param options [::Gapic::CallOptions, ::Hash]
1060
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1061
+ #
1062
+ # @overload update_feature_view(feature_view: nil, update_mask: nil)
1063
+ # Pass arguments to `update_feature_view` via keyword arguments. Note that at
1064
+ # least one keyword argument is required. To specify no parameters, or to keep all
1065
+ # the default parameter values, pass an empty Hash as a request object (see above).
1066
+ #
1067
+ # @param feature_view [::Google::Cloud::AIPlatform::V1::FeatureView, ::Hash]
1068
+ # Required. The FeatureView's `name` field is used to identify the
1069
+ # FeatureView to be updated. Format:
1070
+ # `projects/{project}/locations/{location}/featureOnlineStores/{feature_online_store}/featureViews/{feature_view}`
1071
+ # @param update_mask [::Google::Protobuf::FieldMask, ::Hash]
1072
+ # Field mask is used to specify the fields to be overwritten in the
1073
+ # FeatureView resource by the update.
1074
+ # The fields specified in the update_mask are relative to the resource, not
1075
+ # the full request. A field will be overwritten if it is in the mask. If the
1076
+ # user does not provide a mask then only the non-empty fields present in the
1077
+ # request will be overwritten. Set the update_mask to `*` to override all
1078
+ # fields.
1079
+ #
1080
+ # Updatable fields:
1081
+ #
1082
+ # * `labels`
1083
+ #
1084
+ # @yield [response, operation] Access the result along with the RPC operation
1085
+ # @yieldparam response [::Gapic::Operation]
1086
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1087
+ #
1088
+ # @return [::Gapic::Operation]
1089
+ #
1090
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1091
+ #
1092
+ # @example Basic example
1093
+ # require "google/cloud/ai_platform/v1"
1094
+ #
1095
+ # # Create a client object. The client can be reused for multiple calls.
1096
+ # client = Google::Cloud::AIPlatform::V1::FeatureOnlineStoreAdminService::Client.new
1097
+ #
1098
+ # # Create a request. To set request fields, pass in keyword arguments.
1099
+ # request = Google::Cloud::AIPlatform::V1::UpdateFeatureViewRequest.new
1100
+ #
1101
+ # # Call the update_feature_view method.
1102
+ # result = client.update_feature_view request
1103
+ #
1104
+ # # The returned object is of type Gapic::Operation. You can use it to
1105
+ # # check the status of an operation, cancel it, or wait for results.
1106
+ # # Here is how to wait for a response.
1107
+ # result.wait_until_done! timeout: 60
1108
+ # if result.response?
1109
+ # p result.response
1110
+ # else
1111
+ # puts "No response received."
1112
+ # end
1113
+ #
1114
+ def update_feature_view request, options = nil
1115
+ raise ::ArgumentError, "request must be provided" if request.nil?
1116
+
1117
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::AIPlatform::V1::UpdateFeatureViewRequest
1118
+
1119
+ # Converts hash and nil to an options object
1120
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1121
+
1122
+ # Customize the options with defaults
1123
+ metadata = @config.rpcs.update_feature_view.metadata.to_h
1124
+
1125
+ # Set x-goog-api-client and x-goog-user-project headers
1126
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1127
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1128
+ gapic_version: ::Google::Cloud::AIPlatform::V1::VERSION
1129
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1130
+
1131
+ header_params = {}
1132
+ if request.feature_view&.name
1133
+ header_params["feature_view.name"] = request.feature_view.name
1134
+ end
1135
+
1136
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1137
+ metadata[:"x-goog-request-params"] ||= request_params_header
1138
+
1139
+ options.apply_defaults timeout: @config.rpcs.update_feature_view.timeout,
1140
+ metadata: metadata,
1141
+ retry_policy: @config.rpcs.update_feature_view.retry_policy
1142
+
1143
+ options.apply_defaults timeout: @config.timeout,
1144
+ metadata: @config.metadata,
1145
+ retry_policy: @config.retry_policy
1146
+
1147
+ @feature_online_store_admin_service_stub.call_rpc :update_feature_view, request, options: options do |response, operation|
1148
+ response = ::Gapic::Operation.new response, @operations_client, options: options
1149
+ yield response, operation if block_given?
1150
+ return response
1151
+ end
1152
+ rescue ::GRPC::BadStatus => e
1153
+ raise ::Google::Cloud::Error.from_error(e)
1154
+ end
1155
+
1156
+ ##
1157
+ # Deletes a single FeatureView.
1158
+ #
1159
+ # @overload delete_feature_view(request, options = nil)
1160
+ # Pass arguments to `delete_feature_view` via a request object, either of type
1161
+ # {::Google::Cloud::AIPlatform::V1::DeleteFeatureViewRequest} or an equivalent Hash.
1162
+ #
1163
+ # @param request [::Google::Cloud::AIPlatform::V1::DeleteFeatureViewRequest, ::Hash]
1164
+ # A request object representing the call parameters. Required. To specify no
1165
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1166
+ # @param options [::Gapic::CallOptions, ::Hash]
1167
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1168
+ #
1169
+ # @overload delete_feature_view(name: nil)
1170
+ # Pass arguments to `delete_feature_view` via keyword arguments. Note that at
1171
+ # least one keyword argument is required. To specify no parameters, or to keep all
1172
+ # the default parameter values, pass an empty Hash as a request object (see above).
1173
+ #
1174
+ # @param name [::String]
1175
+ # Required. The name of the FeatureView to be deleted.
1176
+ # Format:
1177
+ # `projects/{project}/locations/{location}/featureOnlineStores/{feature_online_store}/featureViews/{feature_view}`
1178
+ #
1179
+ # @yield [response, operation] Access the result along with the RPC operation
1180
+ # @yieldparam response [::Gapic::Operation]
1181
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1182
+ #
1183
+ # @return [::Gapic::Operation]
1184
+ #
1185
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1186
+ #
1187
+ # @example Basic example
1188
+ # require "google/cloud/ai_platform/v1"
1189
+ #
1190
+ # # Create a client object. The client can be reused for multiple calls.
1191
+ # client = Google::Cloud::AIPlatform::V1::FeatureOnlineStoreAdminService::Client.new
1192
+ #
1193
+ # # Create a request. To set request fields, pass in keyword arguments.
1194
+ # request = Google::Cloud::AIPlatform::V1::DeleteFeatureViewRequest.new
1195
+ #
1196
+ # # Call the delete_feature_view method.
1197
+ # result = client.delete_feature_view request
1198
+ #
1199
+ # # The returned object is of type Gapic::Operation. You can use it to
1200
+ # # check the status of an operation, cancel it, or wait for results.
1201
+ # # Here is how to wait for a response.
1202
+ # result.wait_until_done! timeout: 60
1203
+ # if result.response?
1204
+ # p result.response
1205
+ # else
1206
+ # puts "No response received."
1207
+ # end
1208
+ #
1209
+ def delete_feature_view request, options = nil
1210
+ raise ::ArgumentError, "request must be provided" if request.nil?
1211
+
1212
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::AIPlatform::V1::DeleteFeatureViewRequest
1213
+
1214
+ # Converts hash and nil to an options object
1215
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1216
+
1217
+ # Customize the options with defaults
1218
+ metadata = @config.rpcs.delete_feature_view.metadata.to_h
1219
+
1220
+ # Set x-goog-api-client and x-goog-user-project headers
1221
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1222
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1223
+ gapic_version: ::Google::Cloud::AIPlatform::V1::VERSION
1224
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1225
+
1226
+ header_params = {}
1227
+ if request.name
1228
+ header_params["name"] = request.name
1229
+ end
1230
+
1231
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1232
+ metadata[:"x-goog-request-params"] ||= request_params_header
1233
+
1234
+ options.apply_defaults timeout: @config.rpcs.delete_feature_view.timeout,
1235
+ metadata: metadata,
1236
+ retry_policy: @config.rpcs.delete_feature_view.retry_policy
1237
+
1238
+ options.apply_defaults timeout: @config.timeout,
1239
+ metadata: @config.metadata,
1240
+ retry_policy: @config.retry_policy
1241
+
1242
+ @feature_online_store_admin_service_stub.call_rpc :delete_feature_view, request, options: options do |response, operation|
1243
+ response = ::Gapic::Operation.new response, @operations_client, options: options
1244
+ yield response, operation if block_given?
1245
+ return response
1246
+ end
1247
+ rescue ::GRPC::BadStatus => e
1248
+ raise ::Google::Cloud::Error.from_error(e)
1249
+ end
1250
+
1251
+ ##
1252
+ # Triggers on-demand sync for the FeatureView.
1253
+ #
1254
+ # @overload sync_feature_view(request, options = nil)
1255
+ # Pass arguments to `sync_feature_view` via a request object, either of type
1256
+ # {::Google::Cloud::AIPlatform::V1::SyncFeatureViewRequest} or an equivalent Hash.
1257
+ #
1258
+ # @param request [::Google::Cloud::AIPlatform::V1::SyncFeatureViewRequest, ::Hash]
1259
+ # A request object representing the call parameters. Required. To specify no
1260
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1261
+ # @param options [::Gapic::CallOptions, ::Hash]
1262
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1263
+ #
1264
+ # @overload sync_feature_view(feature_view: nil)
1265
+ # Pass arguments to `sync_feature_view` via keyword arguments. Note that at
1266
+ # least one keyword argument is required. To specify no parameters, or to keep all
1267
+ # the default parameter values, pass an empty Hash as a request object (see above).
1268
+ #
1269
+ # @param feature_view [::String]
1270
+ # Required. Format:
1271
+ # `projects/{project}/locations/{location}/featureOnlineStores/{feature_online_store}/featureViews/{feature_view}`
1272
+ #
1273
+ # @yield [response, operation] Access the result along with the RPC operation
1274
+ # @yieldparam response [::Google::Cloud::AIPlatform::V1::SyncFeatureViewResponse]
1275
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1276
+ #
1277
+ # @return [::Google::Cloud::AIPlatform::V1::SyncFeatureViewResponse]
1278
+ #
1279
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1280
+ #
1281
+ # @example Basic example
1282
+ # require "google/cloud/ai_platform/v1"
1283
+ #
1284
+ # # Create a client object. The client can be reused for multiple calls.
1285
+ # client = Google::Cloud::AIPlatform::V1::FeatureOnlineStoreAdminService::Client.new
1286
+ #
1287
+ # # Create a request. To set request fields, pass in keyword arguments.
1288
+ # request = Google::Cloud::AIPlatform::V1::SyncFeatureViewRequest.new
1289
+ #
1290
+ # # Call the sync_feature_view method.
1291
+ # result = client.sync_feature_view request
1292
+ #
1293
+ # # The returned object is of type Google::Cloud::AIPlatform::V1::SyncFeatureViewResponse.
1294
+ # p result
1295
+ #
1296
+ def sync_feature_view request, options = nil
1297
+ raise ::ArgumentError, "request must be provided" if request.nil?
1298
+
1299
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::AIPlatform::V1::SyncFeatureViewRequest
1300
+
1301
+ # Converts hash and nil to an options object
1302
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1303
+
1304
+ # Customize the options with defaults
1305
+ metadata = @config.rpcs.sync_feature_view.metadata.to_h
1306
+
1307
+ # Set x-goog-api-client and x-goog-user-project headers
1308
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1309
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1310
+ gapic_version: ::Google::Cloud::AIPlatform::V1::VERSION
1311
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1312
+
1313
+ header_params = {}
1314
+ if request.feature_view
1315
+ header_params["feature_view"] = request.feature_view
1316
+ end
1317
+
1318
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1319
+ metadata[:"x-goog-request-params"] ||= request_params_header
1320
+
1321
+ options.apply_defaults timeout: @config.rpcs.sync_feature_view.timeout,
1322
+ metadata: metadata,
1323
+ retry_policy: @config.rpcs.sync_feature_view.retry_policy
1324
+
1325
+ options.apply_defaults timeout: @config.timeout,
1326
+ metadata: @config.metadata,
1327
+ retry_policy: @config.retry_policy
1328
+
1329
+ @feature_online_store_admin_service_stub.call_rpc :sync_feature_view, request, options: options do |response, operation|
1330
+ yield response, operation if block_given?
1331
+ return response
1332
+ end
1333
+ rescue ::GRPC::BadStatus => e
1334
+ raise ::Google::Cloud::Error.from_error(e)
1335
+ end
1336
+
1337
+ ##
1338
+ # Gets details of a single FeatureViewSync.
1339
+ #
1340
+ # @overload get_feature_view_sync(request, options = nil)
1341
+ # Pass arguments to `get_feature_view_sync` via a request object, either of type
1342
+ # {::Google::Cloud::AIPlatform::V1::GetFeatureViewSyncRequest} or an equivalent Hash.
1343
+ #
1344
+ # @param request [::Google::Cloud::AIPlatform::V1::GetFeatureViewSyncRequest, ::Hash]
1345
+ # A request object representing the call parameters. Required. To specify no
1346
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1347
+ # @param options [::Gapic::CallOptions, ::Hash]
1348
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1349
+ #
1350
+ # @overload get_feature_view_sync(name: nil)
1351
+ # Pass arguments to `get_feature_view_sync` via keyword arguments. Note that at
1352
+ # least one keyword argument is required. To specify no parameters, or to keep all
1353
+ # the default parameter values, pass an empty Hash as a request object (see above).
1354
+ #
1355
+ # @param name [::String]
1356
+ # Required. The name of the FeatureViewSync resource.
1357
+ # Format:
1358
+ # `projects/{project}/locations/{location}/featureOnlineStores/{feature_online_store}/featureViews/{feature_view}/featureViewSyncs/{feature_view_sync}`
1359
+ #
1360
+ # @yield [response, operation] Access the result along with the RPC operation
1361
+ # @yieldparam response [::Google::Cloud::Aiplatform::V1::FeatureViewSync]
1362
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1363
+ #
1364
+ # @return [::Google::Cloud::Aiplatform::V1::FeatureViewSync]
1365
+ #
1366
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1367
+ #
1368
+ # @example Basic example
1369
+ # require "google/cloud/ai_platform/v1"
1370
+ #
1371
+ # # Create a client object. The client can be reused for multiple calls.
1372
+ # client = Google::Cloud::AIPlatform::V1::FeatureOnlineStoreAdminService::Client.new
1373
+ #
1374
+ # # Create a request. To set request fields, pass in keyword arguments.
1375
+ # request = Google::Cloud::AIPlatform::V1::GetFeatureViewSyncRequest.new
1376
+ #
1377
+ # # Call the get_feature_view_sync method.
1378
+ # result = client.get_feature_view_sync request
1379
+ #
1380
+ # # The returned object is of type Google::Cloud::Aiplatform::V1::FeatureViewSync.
1381
+ # p result
1382
+ #
1383
+ def get_feature_view_sync request, options = nil
1384
+ raise ::ArgumentError, "request must be provided" if request.nil?
1385
+
1386
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::AIPlatform::V1::GetFeatureViewSyncRequest
1387
+
1388
+ # Converts hash and nil to an options object
1389
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1390
+
1391
+ # Customize the options with defaults
1392
+ metadata = @config.rpcs.get_feature_view_sync.metadata.to_h
1393
+
1394
+ # Set x-goog-api-client and x-goog-user-project headers
1395
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1396
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1397
+ gapic_version: ::Google::Cloud::AIPlatform::V1::VERSION
1398
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1399
+
1400
+ header_params = {}
1401
+ if request.name
1402
+ header_params["name"] = request.name
1403
+ end
1404
+
1405
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1406
+ metadata[:"x-goog-request-params"] ||= request_params_header
1407
+
1408
+ options.apply_defaults timeout: @config.rpcs.get_feature_view_sync.timeout,
1409
+ metadata: metadata,
1410
+ retry_policy: @config.rpcs.get_feature_view_sync.retry_policy
1411
+
1412
+ options.apply_defaults timeout: @config.timeout,
1413
+ metadata: @config.metadata,
1414
+ retry_policy: @config.retry_policy
1415
+
1416
+ @feature_online_store_admin_service_stub.call_rpc :get_feature_view_sync, request, options: options do |response, operation|
1417
+ yield response, operation if block_given?
1418
+ return response
1419
+ end
1420
+ rescue ::GRPC::BadStatus => e
1421
+ raise ::Google::Cloud::Error.from_error(e)
1422
+ end
1423
+
1424
+ ##
1425
+ # Lists FeatureViewSyncs in a given FeatureView.
1426
+ #
1427
+ # @overload list_feature_view_syncs(request, options = nil)
1428
+ # Pass arguments to `list_feature_view_syncs` via a request object, either of type
1429
+ # {::Google::Cloud::AIPlatform::V1::ListFeatureViewSyncsRequest} or an equivalent Hash.
1430
+ #
1431
+ # @param request [::Google::Cloud::AIPlatform::V1::ListFeatureViewSyncsRequest, ::Hash]
1432
+ # A request object representing the call parameters. Required. To specify no
1433
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1434
+ # @param options [::Gapic::CallOptions, ::Hash]
1435
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1436
+ #
1437
+ # @overload list_feature_view_syncs(parent: nil, filter: nil, page_size: nil, page_token: nil, order_by: nil)
1438
+ # Pass arguments to `list_feature_view_syncs` via keyword arguments. Note that at
1439
+ # least one keyword argument is required. To specify no parameters, or to keep all
1440
+ # the default parameter values, pass an empty Hash as a request object (see above).
1441
+ #
1442
+ # @param parent [::String]
1443
+ # Required. The resource name of the FeatureView to list FeatureViewSyncs.
1444
+ # Format:
1445
+ # `projects/{project}/locations/{location}/featureOnlineStores/{feature_online_store}/featureViews/{feature_view}`
1446
+ # @param filter [::String]
1447
+ # Lists the FeatureViewSyncs that match the filter expression. The following
1448
+ # filters are supported:
1449
+ #
1450
+ # * `create_time`: Supports `=`, `!=`, `<`, `>`, `>=`, and `<=` comparisons.
1451
+ # Values must be in RFC 3339 format.
1452
+ #
1453
+ # Examples:
1454
+ #
1455
+ # * `create_time > \"2020-01-31T15:30:00.000000Z\"` --> FeatureViewSyncs
1456
+ # created after 2020-01-31T15:30:00.000000Z.
1457
+ # @param page_size [::Integer]
1458
+ # The maximum number of FeatureViewSyncs to return. The service may return
1459
+ # fewer than this value. If unspecified, at most 1000 FeatureViewSyncs will
1460
+ # be returned. The maximum value is 1000; any value greater than 1000 will be
1461
+ # coerced to 1000.
1462
+ # @param page_token [::String]
1463
+ # A page token, received from a previous
1464
+ # {::Google::Cloud::AIPlatform::V1::FeatureOnlineStoreAdminService::Client#list_feature_view_syncs FeatureOnlineStoreAdminService.ListFeatureViewSyncs}
1465
+ # call. Provide this to retrieve the subsequent page.
1466
+ #
1467
+ # When paginating, all other parameters provided to
1468
+ # {::Google::Cloud::AIPlatform::V1::FeatureOnlineStoreAdminService::Client#list_feature_view_syncs FeatureOnlineStoreAdminService.ListFeatureViewSyncs}
1469
+ # must match the call that provided the page token.
1470
+ # @param order_by [::String]
1471
+ # A comma-separated list of fields to order by, sorted in ascending order.
1472
+ # Use "desc" after a field name for descending.
1473
+ #
1474
+ # Supported fields:
1475
+ #
1476
+ # * `create_time`
1477
+ #
1478
+ # @yield [response, operation] Access the result along with the RPC operation
1479
+ # @yieldparam response [::Gapic::PagedEnumerable<::Google::Cloud::Aiplatform::V1::FeatureViewSync>]
1480
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1481
+ #
1482
+ # @return [::Gapic::PagedEnumerable<::Google::Cloud::Aiplatform::V1::FeatureViewSync>]
1483
+ #
1484
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1485
+ #
1486
+ # @example Basic example
1487
+ # require "google/cloud/ai_platform/v1"
1488
+ #
1489
+ # # Create a client object. The client can be reused for multiple calls.
1490
+ # client = Google::Cloud::AIPlatform::V1::FeatureOnlineStoreAdminService::Client.new
1491
+ #
1492
+ # # Create a request. To set request fields, pass in keyword arguments.
1493
+ # request = Google::Cloud::AIPlatform::V1::ListFeatureViewSyncsRequest.new
1494
+ #
1495
+ # # Call the list_feature_view_syncs method.
1496
+ # result = client.list_feature_view_syncs request
1497
+ #
1498
+ # # The returned object is of type Gapic::PagedEnumerable. You can iterate
1499
+ # # over elements, and API calls will be issued to fetch pages as needed.
1500
+ # result.each do |item|
1501
+ # # Each element is of type ::Google::Cloud::Aiplatform::V1::FeatureViewSync.
1502
+ # p item
1503
+ # end
1504
+ #
1505
+ def list_feature_view_syncs request, options = nil
1506
+ raise ::ArgumentError, "request must be provided" if request.nil?
1507
+
1508
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::AIPlatform::V1::ListFeatureViewSyncsRequest
1509
+
1510
+ # Converts hash and nil to an options object
1511
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1512
+
1513
+ # Customize the options with defaults
1514
+ metadata = @config.rpcs.list_feature_view_syncs.metadata.to_h
1515
+
1516
+ # Set x-goog-api-client and x-goog-user-project headers
1517
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1518
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1519
+ gapic_version: ::Google::Cloud::AIPlatform::V1::VERSION
1520
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1521
+
1522
+ header_params = {}
1523
+ if request.parent
1524
+ header_params["parent"] = request.parent
1525
+ end
1526
+
1527
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1528
+ metadata[:"x-goog-request-params"] ||= request_params_header
1529
+
1530
+ options.apply_defaults timeout: @config.rpcs.list_feature_view_syncs.timeout,
1531
+ metadata: metadata,
1532
+ retry_policy: @config.rpcs.list_feature_view_syncs.retry_policy
1533
+
1534
+ options.apply_defaults timeout: @config.timeout,
1535
+ metadata: @config.metadata,
1536
+ retry_policy: @config.retry_policy
1537
+
1538
+ @feature_online_store_admin_service_stub.call_rpc :list_feature_view_syncs, request, options: options do |response, operation|
1539
+ response = ::Gapic::PagedEnumerable.new @feature_online_store_admin_service_stub, :list_feature_view_syncs, request, response, operation, options
1540
+ yield response, operation if block_given?
1541
+ return response
1542
+ end
1543
+ rescue ::GRPC::BadStatus => e
1544
+ raise ::Google::Cloud::Error.from_error(e)
1545
+ end
1546
+
1547
+ ##
1548
+ # Configuration class for the FeatureOnlineStoreAdminService API.
1549
+ #
1550
+ # This class represents the configuration for FeatureOnlineStoreAdminService,
1551
+ # providing control over timeouts, retry behavior, logging, transport
1552
+ # parameters, and other low-level controls. Certain parameters can also be
1553
+ # applied individually to specific RPCs. See
1554
+ # {::Google::Cloud::AIPlatform::V1::FeatureOnlineStoreAdminService::Client::Configuration::Rpcs}
1555
+ # for a list of RPCs that can be configured independently.
1556
+ #
1557
+ # Configuration can be applied globally to all clients, or to a single client
1558
+ # on construction.
1559
+ #
1560
+ # @example
1561
+ #
1562
+ # # Modify the global config, setting the timeout for
1563
+ # # create_feature_online_store to 20 seconds,
1564
+ # # and all remaining timeouts to 10 seconds.
1565
+ # ::Google::Cloud::AIPlatform::V1::FeatureOnlineStoreAdminService::Client.configure do |config|
1566
+ # config.timeout = 10.0
1567
+ # config.rpcs.create_feature_online_store.timeout = 20.0
1568
+ # end
1569
+ #
1570
+ # # Apply the above configuration only to a new client.
1571
+ # client = ::Google::Cloud::AIPlatform::V1::FeatureOnlineStoreAdminService::Client.new do |config|
1572
+ # config.timeout = 10.0
1573
+ # config.rpcs.create_feature_online_store.timeout = 20.0
1574
+ # end
1575
+ #
1576
+ # @!attribute [rw] endpoint
1577
+ # The hostname or hostname:port of the service endpoint.
1578
+ # Defaults to `"aiplatform.googleapis.com"`.
1579
+ # @return [::String]
1580
+ # @!attribute [rw] credentials
1581
+ # Credentials to send with calls. You may provide any of the following types:
1582
+ # * (`String`) The path to a service account key file in JSON format
1583
+ # * (`Hash`) A service account key as a Hash
1584
+ # * (`Google::Auth::Credentials`) A googleauth credentials object
1585
+ # (see the [googleauth docs](https://rubydoc.info/gems/googleauth/Google/Auth/Credentials))
1586
+ # * (`Signet::OAuth2::Client`) A signet oauth2 client object
1587
+ # (see the [signet docs](https://rubydoc.info/gems/signet/Signet/OAuth2/Client))
1588
+ # * (`GRPC::Core::Channel`) a gRPC channel with included credentials
1589
+ # * (`GRPC::Core::ChannelCredentials`) a gRPC credentails object
1590
+ # * (`nil`) indicating no credentials
1591
+ # @return [::Object]
1592
+ # @!attribute [rw] scope
1593
+ # The OAuth scopes
1594
+ # @return [::Array<::String>]
1595
+ # @!attribute [rw] lib_name
1596
+ # The library name as recorded in instrumentation and logging
1597
+ # @return [::String]
1598
+ # @!attribute [rw] lib_version
1599
+ # The library version as recorded in instrumentation and logging
1600
+ # @return [::String]
1601
+ # @!attribute [rw] channel_args
1602
+ # Extra parameters passed to the gRPC channel. Note: this is ignored if a
1603
+ # `GRPC::Core::Channel` object is provided as the credential.
1604
+ # @return [::Hash]
1605
+ # @!attribute [rw] interceptors
1606
+ # An array of interceptors that are run before calls are executed.
1607
+ # @return [::Array<::GRPC::ClientInterceptor>]
1608
+ # @!attribute [rw] timeout
1609
+ # The call timeout in seconds.
1610
+ # @return [::Numeric]
1611
+ # @!attribute [rw] metadata
1612
+ # Additional gRPC headers to be sent with the call.
1613
+ # @return [::Hash{::Symbol=>::String}]
1614
+ # @!attribute [rw] retry_policy
1615
+ # The retry policy. The value is a hash with the following keys:
1616
+ # * `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds.
1617
+ # * `:max_delay` (*type:* `Numeric`) - The max delay in seconds.
1618
+ # * `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier.
1619
+ # * `:retry_codes` (*type:* `Array<String>`) - The error codes that should
1620
+ # trigger a retry.
1621
+ # @return [::Hash]
1622
+ # @!attribute [rw] quota_project
1623
+ # A separate project against which to charge quota.
1624
+ # @return [::String]
1625
+ #
1626
+ class Configuration
1627
+ extend ::Gapic::Config
1628
+
1629
+ DEFAULT_ENDPOINT = "aiplatform.googleapis.com"
1630
+
1631
+ config_attr :endpoint, DEFAULT_ENDPOINT, ::String
1632
+ config_attr :credentials, nil do |value|
1633
+ allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
1634
+ allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
1635
+ allowed.any? { |klass| klass === value }
1636
+ end
1637
+ config_attr :scope, nil, ::String, ::Array, nil
1638
+ config_attr :lib_name, nil, ::String, nil
1639
+ config_attr :lib_version, nil, ::String, nil
1640
+ config_attr(:channel_args, { "grpc.service_config_disable_resolution" => 1 }, ::Hash, nil)
1641
+ config_attr :interceptors, nil, ::Array, nil
1642
+ config_attr :timeout, nil, ::Numeric, nil
1643
+ config_attr :metadata, nil, ::Hash, nil
1644
+ config_attr :retry_policy, nil, ::Hash, ::Proc, nil
1645
+ config_attr :quota_project, nil, ::String, nil
1646
+
1647
+ # @private
1648
+ def initialize parent_config = nil
1649
+ @parent_config = parent_config unless parent_config.nil?
1650
+
1651
+ yield self if block_given?
1652
+ end
1653
+
1654
+ ##
1655
+ # Configurations for individual RPCs
1656
+ # @return [Rpcs]
1657
+ #
1658
+ def rpcs
1659
+ @rpcs ||= begin
1660
+ parent_rpcs = nil
1661
+ parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config.respond_to?(:rpcs)
1662
+ Rpcs.new parent_rpcs
1663
+ end
1664
+ end
1665
+
1666
+ ##
1667
+ # Configuration for the channel pool
1668
+ # @return [::Gapic::ServiceStub::ChannelPool::Configuration]
1669
+ #
1670
+ def channel_pool
1671
+ @channel_pool ||= ::Gapic::ServiceStub::ChannelPool::Configuration.new
1672
+ end
1673
+
1674
+ ##
1675
+ # Configuration RPC class for the FeatureOnlineStoreAdminService API.
1676
+ #
1677
+ # Includes fields providing the configuration for each RPC in this service.
1678
+ # Each configuration object is of type `Gapic::Config::Method` and includes
1679
+ # the following configuration fields:
1680
+ #
1681
+ # * `timeout` (*type:* `Numeric`) - The call timeout in seconds
1682
+ # * `metadata` (*type:* `Hash{Symbol=>String}`) - Additional gRPC headers
1683
+ # * `retry_policy (*type:* `Hash`) - The retry policy. The policy fields
1684
+ # include the following keys:
1685
+ # * `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds.
1686
+ # * `:max_delay` (*type:* `Numeric`) - The max delay in seconds.
1687
+ # * `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier.
1688
+ # * `:retry_codes` (*type:* `Array<String>`) - The error codes that should
1689
+ # trigger a retry.
1690
+ #
1691
+ class Rpcs
1692
+ ##
1693
+ # RPC-specific configuration for `create_feature_online_store`
1694
+ # @return [::Gapic::Config::Method]
1695
+ #
1696
+ attr_reader :create_feature_online_store
1697
+ ##
1698
+ # RPC-specific configuration for `get_feature_online_store`
1699
+ # @return [::Gapic::Config::Method]
1700
+ #
1701
+ attr_reader :get_feature_online_store
1702
+ ##
1703
+ # RPC-specific configuration for `list_feature_online_stores`
1704
+ # @return [::Gapic::Config::Method]
1705
+ #
1706
+ attr_reader :list_feature_online_stores
1707
+ ##
1708
+ # RPC-specific configuration for `update_feature_online_store`
1709
+ # @return [::Gapic::Config::Method]
1710
+ #
1711
+ attr_reader :update_feature_online_store
1712
+ ##
1713
+ # RPC-specific configuration for `delete_feature_online_store`
1714
+ # @return [::Gapic::Config::Method]
1715
+ #
1716
+ attr_reader :delete_feature_online_store
1717
+ ##
1718
+ # RPC-specific configuration for `create_feature_view`
1719
+ # @return [::Gapic::Config::Method]
1720
+ #
1721
+ attr_reader :create_feature_view
1722
+ ##
1723
+ # RPC-specific configuration for `get_feature_view`
1724
+ # @return [::Gapic::Config::Method]
1725
+ #
1726
+ attr_reader :get_feature_view
1727
+ ##
1728
+ # RPC-specific configuration for `list_feature_views`
1729
+ # @return [::Gapic::Config::Method]
1730
+ #
1731
+ attr_reader :list_feature_views
1732
+ ##
1733
+ # RPC-specific configuration for `update_feature_view`
1734
+ # @return [::Gapic::Config::Method]
1735
+ #
1736
+ attr_reader :update_feature_view
1737
+ ##
1738
+ # RPC-specific configuration for `delete_feature_view`
1739
+ # @return [::Gapic::Config::Method]
1740
+ #
1741
+ attr_reader :delete_feature_view
1742
+ ##
1743
+ # RPC-specific configuration for `sync_feature_view`
1744
+ # @return [::Gapic::Config::Method]
1745
+ #
1746
+ attr_reader :sync_feature_view
1747
+ ##
1748
+ # RPC-specific configuration for `get_feature_view_sync`
1749
+ # @return [::Gapic::Config::Method]
1750
+ #
1751
+ attr_reader :get_feature_view_sync
1752
+ ##
1753
+ # RPC-specific configuration for `list_feature_view_syncs`
1754
+ # @return [::Gapic::Config::Method]
1755
+ #
1756
+ attr_reader :list_feature_view_syncs
1757
+
1758
+ # @private
1759
+ def initialize parent_rpcs = nil
1760
+ create_feature_online_store_config = parent_rpcs.create_feature_online_store if parent_rpcs.respond_to? :create_feature_online_store
1761
+ @create_feature_online_store = ::Gapic::Config::Method.new create_feature_online_store_config
1762
+ get_feature_online_store_config = parent_rpcs.get_feature_online_store if parent_rpcs.respond_to? :get_feature_online_store
1763
+ @get_feature_online_store = ::Gapic::Config::Method.new get_feature_online_store_config
1764
+ list_feature_online_stores_config = parent_rpcs.list_feature_online_stores if parent_rpcs.respond_to? :list_feature_online_stores
1765
+ @list_feature_online_stores = ::Gapic::Config::Method.new list_feature_online_stores_config
1766
+ update_feature_online_store_config = parent_rpcs.update_feature_online_store if parent_rpcs.respond_to? :update_feature_online_store
1767
+ @update_feature_online_store = ::Gapic::Config::Method.new update_feature_online_store_config
1768
+ delete_feature_online_store_config = parent_rpcs.delete_feature_online_store if parent_rpcs.respond_to? :delete_feature_online_store
1769
+ @delete_feature_online_store = ::Gapic::Config::Method.new delete_feature_online_store_config
1770
+ create_feature_view_config = parent_rpcs.create_feature_view if parent_rpcs.respond_to? :create_feature_view
1771
+ @create_feature_view = ::Gapic::Config::Method.new create_feature_view_config
1772
+ get_feature_view_config = parent_rpcs.get_feature_view if parent_rpcs.respond_to? :get_feature_view
1773
+ @get_feature_view = ::Gapic::Config::Method.new get_feature_view_config
1774
+ list_feature_views_config = parent_rpcs.list_feature_views if parent_rpcs.respond_to? :list_feature_views
1775
+ @list_feature_views = ::Gapic::Config::Method.new list_feature_views_config
1776
+ update_feature_view_config = parent_rpcs.update_feature_view if parent_rpcs.respond_to? :update_feature_view
1777
+ @update_feature_view = ::Gapic::Config::Method.new update_feature_view_config
1778
+ delete_feature_view_config = parent_rpcs.delete_feature_view if parent_rpcs.respond_to? :delete_feature_view
1779
+ @delete_feature_view = ::Gapic::Config::Method.new delete_feature_view_config
1780
+ sync_feature_view_config = parent_rpcs.sync_feature_view if parent_rpcs.respond_to? :sync_feature_view
1781
+ @sync_feature_view = ::Gapic::Config::Method.new sync_feature_view_config
1782
+ get_feature_view_sync_config = parent_rpcs.get_feature_view_sync if parent_rpcs.respond_to? :get_feature_view_sync
1783
+ @get_feature_view_sync = ::Gapic::Config::Method.new get_feature_view_sync_config
1784
+ list_feature_view_syncs_config = parent_rpcs.list_feature_view_syncs if parent_rpcs.respond_to? :list_feature_view_syncs
1785
+ @list_feature_view_syncs = ::Gapic::Config::Method.new list_feature_view_syncs_config
1786
+
1787
+ yield self if block_given?
1788
+ end
1789
+ end
1790
+ end
1791
+ end
1792
+ end
1793
+ end
1794
+ end
1795
+ end
1796
+ end