google-cloud-retail 1.10.0 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: de7cf72fd9372978eb786710aab85dfc8b6f57f52ae32773ada8878ee43307b1
4
- data.tar.gz: 8f21f60df8160ce0b5771d78c5a3fb5df264ba8a99931b8dcebef75e05c17a55
3
+ metadata.gz: 24c9ba0a3e71adcd920e6cd79652cd251ecb31d3da31853f862aeee9851dcef1
4
+ data.tar.gz: 164f56e1d4e94588c2a3b8943bbf4d1c909ebd2f70ec4003bbd68d6322fae42d
5
5
  SHA512:
6
- metadata.gz: a59db269f674d912bb0ffcde6d1bc795464c9013751f8bd819783bc94b9afb46b5e453bda3af2d203670eef5ab2717d487e5b3828ef6cda08b578e1fe83c3c84
7
- data.tar.gz: a89d052a8b4e88cb9db207ba4099f383e7304af4151355dcb6f6f49a3a0ece832425b9b8ac2de3504c1832d23fe8372339e7b2a3eb35dcb89530a514d78c47b5
6
+ metadata.gz: e8ae689c7272df9caf29f8e97fc63acdd2b4d5eb852c545656dacbc98442685dfe04370df04d4aaa437bc22b63902c48b0598c69c91babdafa4e8786441b7e82
7
+ data.tar.gz: 7b9bd0048680ae6903631c37adb00a23a0468b30eed9e7ac3c18ba0bd54ab92d670fc73d0e6e4aaac85a41eeedeabb530adf86d398df711b263caa249d430615
data/README.md CHANGED
@@ -34,9 +34,39 @@ In order to use this library, you first need to go through the following steps:
34
34
  1. [Enable the API.](https://console.cloud.google.com/apis/library/retail.googleapis.com)
35
35
  1. {file:AUTHENTICATION.md Set up authentication.}
36
36
 
37
+ ## Debug Logging
38
+
39
+ This library comes with opt-in Debug Logging that can help you troubleshoot
40
+ your application's integration with the API. When logging is activated, key
41
+ events such as requests and responses, along with data payloads and metadata
42
+ such as headers and client configuration, are logged to the standard error
43
+ stream.
44
+
45
+ **WARNING:** Client Library Debug Logging includes your data payloads in
46
+ plaintext, which could include sensitive data such as PII for yourself or your
47
+ customers, private keys, or other security data that could be compromising if
48
+ leaked. Always practice good data hygiene with your application logs, and follow
49
+ the principle of least access. Google also recommends that Client Library Debug
50
+ Logging be enabled only temporarily during active debugging, and not used
51
+ permanently in production.
52
+
53
+ To enable logging, set the environment variable `GOOGLE_SDK_RUBY_LOGGING_GEMS`
54
+ to the value `all`. Alternatively, you can set the value to a comma-delimited
55
+ list of client library gem names. This will select the default logging behavior,
56
+ which writes logs to the standard error stream. On a local workstation, this may
57
+ result in logs appearing on the console. When running on a Google Cloud hosting
58
+ service such as [Google Cloud Run](https://cloud.google.com/run), this generally
59
+ results in logs appearing alongside your application logs in the
60
+ [Google Cloud Logging](https://cloud.google.com/logging/) service.
61
+
62
+ Debug logging also requires that the versioned clients for this service be
63
+ sufficiently recent, released after about Dec 10, 2024. If logging is not
64
+ working, try updating the versioned clients in your bundle or installed gems:
65
+ [google-cloud-retail-v2](https://cloud.google.com/ruby/docs/reference/google-cloud-retail-v2/latest).
66
+
37
67
  ## Supported Ruby Versions
38
68
 
39
- This library is supported on Ruby 2.7+.
69
+ This library is supported on Ruby 3.0+.
40
70
 
41
71
  Google provides official support for Ruby versions that are actively supported
42
72
  by Ruby Core—that is, Ruby versions that are either in normal maintenance or
@@ -20,7 +20,7 @@
20
20
  module Google
21
21
  module Cloud
22
22
  module Retail
23
- VERSION = "1.10.0"
23
+ VERSION = "2.0.0"
24
24
  end
25
25
  end
26
26
  end
@@ -58,6 +58,11 @@ module Google
58
58
  # You can also specify a different transport by passing `:rest` or `:grpc` in
59
59
  # the `transport` parameter.
60
60
  #
61
+ # Raises an exception if the currently installed versioned client gem for the
62
+ # given API version does not support the given transport of the AnalyticsService service.
63
+ # You can determine whether the method will succeed by calling
64
+ # {Google::Cloud::Retail.analytics_service_available?}.
65
+ #
61
66
  # ## About AnalyticsService
62
67
  #
63
68
  # Service for managing & accessing retail search business metric.
@@ -80,6 +85,37 @@ module Google
80
85
  service_module.const_get(:Client).new(&block)
81
86
  end
82
87
 
88
+ ##
89
+ # Determines whether the AnalyticsService service is supported by the current client.
90
+ # If true, you can retrieve a client object by calling {Google::Cloud::Retail.analytics_service}.
91
+ # If false, that method will raise an exception. This could happen if the given
92
+ # API version does not exist or does not support the AnalyticsService service,
93
+ # or if the versioned client gem needs an update to support the AnalyticsService service.
94
+ #
95
+ # @param version [::String, ::Symbol] The API version to connect to. Optional.
96
+ # Defaults to `:v2`.
97
+ # @param transport [:grpc, :rest] The transport to use. Defaults to `:grpc`.
98
+ # @return [boolean] Whether the service is available.
99
+ #
100
+ def self.analytics_service_available? version: :v2, transport: :grpc
101
+ require "google/cloud/retail/#{version.to_s.downcase}"
102
+ package_name = Google::Cloud::Retail
103
+ .constants
104
+ .select { |sym| sym.to_s.downcase == version.to_s.downcase.tr("_", "") }
105
+ .first
106
+ return false unless package_name
107
+ service_module = Google::Cloud::Retail.const_get package_name
108
+ return false unless service_module.const_defined? :AnalyticsService
109
+ service_module = service_module.const_get :AnalyticsService
110
+ if transport == :rest
111
+ return false unless service_module.const_defined? :Rest
112
+ service_module = service_module.const_get :Rest
113
+ end
114
+ service_module.const_defined? :Client
115
+ rescue ::LoadError
116
+ false
117
+ end
118
+
83
119
  ##
84
120
  # Create a new client object for CatalogService.
85
121
  #
@@ -93,6 +129,11 @@ module Google
93
129
  # You can also specify a different transport by passing `:rest` or `:grpc` in
94
130
  # the `transport` parameter.
95
131
  #
132
+ # Raises an exception if the currently installed versioned client gem for the
133
+ # given API version does not support the given transport of the CatalogService service.
134
+ # You can determine whether the method will succeed by calling
135
+ # {Google::Cloud::Retail.catalog_service_available?}.
136
+ #
96
137
  # ## About CatalogService
97
138
  #
98
139
  # Service for managing catalog configuration.
@@ -114,6 +155,37 @@ module Google
114
155
  service_module.const_get(:Client).new(&block)
115
156
  end
116
157
 
158
+ ##
159
+ # Determines whether the CatalogService service is supported by the current client.
160
+ # If true, you can retrieve a client object by calling {Google::Cloud::Retail.catalog_service}.
161
+ # If false, that method will raise an exception. This could happen if the given
162
+ # API version does not exist or does not support the CatalogService service,
163
+ # or if the versioned client gem needs an update to support the CatalogService service.
164
+ #
165
+ # @param version [::String, ::Symbol] The API version to connect to. Optional.
166
+ # Defaults to `:v2`.
167
+ # @param transport [:grpc, :rest] The transport to use. Defaults to `:grpc`.
168
+ # @return [boolean] Whether the service is available.
169
+ #
170
+ def self.catalog_service_available? version: :v2, transport: :grpc
171
+ require "google/cloud/retail/#{version.to_s.downcase}"
172
+ package_name = Google::Cloud::Retail
173
+ .constants
174
+ .select { |sym| sym.to_s.downcase == version.to_s.downcase.tr("_", "") }
175
+ .first
176
+ return false unless package_name
177
+ service_module = Google::Cloud::Retail.const_get package_name
178
+ return false unless service_module.const_defined? :CatalogService
179
+ service_module = service_module.const_get :CatalogService
180
+ if transport == :rest
181
+ return false unless service_module.const_defined? :Rest
182
+ service_module = service_module.const_get :Rest
183
+ end
184
+ service_module.const_defined? :Client
185
+ rescue ::LoadError
186
+ false
187
+ end
188
+
117
189
  ##
118
190
  # Create a new client object for CompletionService.
119
191
  #
@@ -127,6 +199,11 @@ module Google
127
199
  # You can also specify a different transport by passing `:rest` or `:grpc` in
128
200
  # the `transport` parameter.
129
201
  #
202
+ # Raises an exception if the currently installed versioned client gem for the
203
+ # given API version does not support the given transport of the CompletionService service.
204
+ # You can determine whether the method will succeed by calling
205
+ # {Google::Cloud::Retail.completion_service_available?}.
206
+ #
130
207
  # ## About CompletionService
131
208
  #
132
209
  # Autocomplete service for retail.
@@ -151,6 +228,37 @@ module Google
151
228
  service_module.const_get(:Client).new(&block)
152
229
  end
153
230
 
231
+ ##
232
+ # Determines whether the CompletionService service is supported by the current client.
233
+ # If true, you can retrieve a client object by calling {Google::Cloud::Retail.completion_service}.
234
+ # If false, that method will raise an exception. This could happen if the given
235
+ # API version does not exist or does not support the CompletionService service,
236
+ # or if the versioned client gem needs an update to support the CompletionService service.
237
+ #
238
+ # @param version [::String, ::Symbol] The API version to connect to. Optional.
239
+ # Defaults to `:v2`.
240
+ # @param transport [:grpc, :rest] The transport to use. Defaults to `:grpc`.
241
+ # @return [boolean] Whether the service is available.
242
+ #
243
+ def self.completion_service_available? version: :v2, transport: :grpc
244
+ require "google/cloud/retail/#{version.to_s.downcase}"
245
+ package_name = Google::Cloud::Retail
246
+ .constants
247
+ .select { |sym| sym.to_s.downcase == version.to_s.downcase.tr("_", "") }
248
+ .first
249
+ return false unless package_name
250
+ service_module = Google::Cloud::Retail.const_get package_name
251
+ return false unless service_module.const_defined? :CompletionService
252
+ service_module = service_module.const_get :CompletionService
253
+ if transport == :rest
254
+ return false unless service_module.const_defined? :Rest
255
+ service_module = service_module.const_get :Rest
256
+ end
257
+ service_module.const_defined? :Client
258
+ rescue ::LoadError
259
+ false
260
+ end
261
+
154
262
  ##
155
263
  # Create a new client object for ControlService.
156
264
  #
@@ -164,6 +272,11 @@ module Google
164
272
  # You can also specify a different transport by passing `:rest` or `:grpc` in
165
273
  # the `transport` parameter.
166
274
  #
275
+ # Raises an exception if the currently installed versioned client gem for the
276
+ # given API version does not support the given transport of the ControlService service.
277
+ # You can determine whether the method will succeed by calling
278
+ # {Google::Cloud::Retail.control_service_available?}.
279
+ #
167
280
  # ## About ControlService
168
281
  #
169
282
  # Service for modifying Control.
@@ -185,6 +298,37 @@ module Google
185
298
  service_module.const_get(:Client).new(&block)
186
299
  end
187
300
 
301
+ ##
302
+ # Determines whether the ControlService service is supported by the current client.
303
+ # If true, you can retrieve a client object by calling {Google::Cloud::Retail.control_service}.
304
+ # If false, that method will raise an exception. This could happen if the given
305
+ # API version does not exist or does not support the ControlService service,
306
+ # or if the versioned client gem needs an update to support the ControlService service.
307
+ #
308
+ # @param version [::String, ::Symbol] The API version to connect to. Optional.
309
+ # Defaults to `:v2`.
310
+ # @param transport [:grpc, :rest] The transport to use. Defaults to `:grpc`.
311
+ # @return [boolean] Whether the service is available.
312
+ #
313
+ def self.control_service_available? version: :v2, transport: :grpc
314
+ require "google/cloud/retail/#{version.to_s.downcase}"
315
+ package_name = Google::Cloud::Retail
316
+ .constants
317
+ .select { |sym| sym.to_s.downcase == version.to_s.downcase.tr("_", "") }
318
+ .first
319
+ return false unless package_name
320
+ service_module = Google::Cloud::Retail.const_get package_name
321
+ return false unless service_module.const_defined? :ControlService
322
+ service_module = service_module.const_get :ControlService
323
+ if transport == :rest
324
+ return false unless service_module.const_defined? :Rest
325
+ service_module = service_module.const_get :Rest
326
+ end
327
+ service_module.const_defined? :Client
328
+ rescue ::LoadError
329
+ false
330
+ end
331
+
188
332
  ##
189
333
  # Create a new client object for GenerativeQuestionService.
190
334
  #
@@ -198,6 +342,11 @@ module Google
198
342
  # You can also specify a different transport by passing `:rest` or `:grpc` in
199
343
  # the `transport` parameter.
200
344
  #
345
+ # Raises an exception if the currently installed versioned client gem for the
346
+ # given API version does not support the given transport of the GenerativeQuestionService service.
347
+ # You can determine whether the method will succeed by calling
348
+ # {Google::Cloud::Retail.generative_question_service_available?}.
349
+ #
201
350
  # ## About GenerativeQuestionService
202
351
  #
203
352
  # Service for managing LLM generated questions in search serving.
@@ -219,6 +368,37 @@ module Google
219
368
  service_module.const_get(:Client).new(&block)
220
369
  end
221
370
 
371
+ ##
372
+ # Determines whether the GenerativeQuestionService service is supported by the current client.
373
+ # If true, you can retrieve a client object by calling {Google::Cloud::Retail.generative_question_service}.
374
+ # If false, that method will raise an exception. This could happen if the given
375
+ # API version does not exist or does not support the GenerativeQuestionService service,
376
+ # or if the versioned client gem needs an update to support the GenerativeQuestionService service.
377
+ #
378
+ # @param version [::String, ::Symbol] The API version to connect to. Optional.
379
+ # Defaults to `:v2`.
380
+ # @param transport [:grpc, :rest] The transport to use. Defaults to `:grpc`.
381
+ # @return [boolean] Whether the service is available.
382
+ #
383
+ def self.generative_question_service_available? version: :v2, transport: :grpc
384
+ require "google/cloud/retail/#{version.to_s.downcase}"
385
+ package_name = Google::Cloud::Retail
386
+ .constants
387
+ .select { |sym| sym.to_s.downcase == version.to_s.downcase.tr("_", "") }
388
+ .first
389
+ return false unless package_name
390
+ service_module = Google::Cloud::Retail.const_get package_name
391
+ return false unless service_module.const_defined? :GenerativeQuestionService
392
+ service_module = service_module.const_get :GenerativeQuestionService
393
+ if transport == :rest
394
+ return false unless service_module.const_defined? :Rest
395
+ service_module = service_module.const_get :Rest
396
+ end
397
+ service_module.const_defined? :Client
398
+ rescue ::LoadError
399
+ false
400
+ end
401
+
222
402
  ##
223
403
  # Create a new client object for ModelService.
224
404
  #
@@ -232,6 +412,11 @@ module Google
232
412
  # You can also specify a different transport by passing `:rest` or `:grpc` in
233
413
  # the `transport` parameter.
234
414
  #
415
+ # Raises an exception if the currently installed versioned client gem for the
416
+ # given API version does not support the given transport of the ModelService service.
417
+ # You can determine whether the method will succeed by calling
418
+ # {Google::Cloud::Retail.model_service_available?}.
419
+ #
235
420
  # ## About ModelService
236
421
  #
237
422
  # Service for performing CRUD operations on models.
@@ -264,6 +449,37 @@ module Google
264
449
  service_module.const_get(:Client).new(&block)
265
450
  end
266
451
 
452
+ ##
453
+ # Determines whether the ModelService service is supported by the current client.
454
+ # If true, you can retrieve a client object by calling {Google::Cloud::Retail.model_service}.
455
+ # If false, that method will raise an exception. This could happen if the given
456
+ # API version does not exist or does not support the ModelService service,
457
+ # or if the versioned client gem needs an update to support the ModelService service.
458
+ #
459
+ # @param version [::String, ::Symbol] The API version to connect to. Optional.
460
+ # Defaults to `:v2`.
461
+ # @param transport [:grpc, :rest] The transport to use. Defaults to `:grpc`.
462
+ # @return [boolean] Whether the service is available.
463
+ #
464
+ def self.model_service_available? version: :v2, transport: :grpc
465
+ require "google/cloud/retail/#{version.to_s.downcase}"
466
+ package_name = Google::Cloud::Retail
467
+ .constants
468
+ .select { |sym| sym.to_s.downcase == version.to_s.downcase.tr("_", "") }
469
+ .first
470
+ return false unless package_name
471
+ service_module = Google::Cloud::Retail.const_get package_name
472
+ return false unless service_module.const_defined? :ModelService
473
+ service_module = service_module.const_get :ModelService
474
+ if transport == :rest
475
+ return false unless service_module.const_defined? :Rest
476
+ service_module = service_module.const_get :Rest
477
+ end
478
+ service_module.const_defined? :Client
479
+ rescue ::LoadError
480
+ false
481
+ end
482
+
267
483
  ##
268
484
  # Create a new client object for PredictionService.
269
485
  #
@@ -277,6 +493,11 @@ module Google
277
493
  # You can also specify a different transport by passing `:rest` or `:grpc` in
278
494
  # the `transport` parameter.
279
495
  #
496
+ # Raises an exception if the currently installed versioned client gem for the
497
+ # given API version does not support the given transport of the PredictionService service.
498
+ # You can determine whether the method will succeed by calling
499
+ # {Google::Cloud::Retail.prediction_service_available?}.
500
+ #
280
501
  # ## About PredictionService
281
502
  #
282
503
  # Service for making recommendation prediction.
@@ -298,6 +519,37 @@ module Google
298
519
  service_module.const_get(:Client).new(&block)
299
520
  end
300
521
 
522
+ ##
523
+ # Determines whether the PredictionService service is supported by the current client.
524
+ # If true, you can retrieve a client object by calling {Google::Cloud::Retail.prediction_service}.
525
+ # If false, that method will raise an exception. This could happen if the given
526
+ # API version does not exist or does not support the PredictionService service,
527
+ # or if the versioned client gem needs an update to support the PredictionService service.
528
+ #
529
+ # @param version [::String, ::Symbol] The API version to connect to. Optional.
530
+ # Defaults to `:v2`.
531
+ # @param transport [:grpc, :rest] The transport to use. Defaults to `:grpc`.
532
+ # @return [boolean] Whether the service is available.
533
+ #
534
+ def self.prediction_service_available? version: :v2, transport: :grpc
535
+ require "google/cloud/retail/#{version.to_s.downcase}"
536
+ package_name = Google::Cloud::Retail
537
+ .constants
538
+ .select { |sym| sym.to_s.downcase == version.to_s.downcase.tr("_", "") }
539
+ .first
540
+ return false unless package_name
541
+ service_module = Google::Cloud::Retail.const_get package_name
542
+ return false unless service_module.const_defined? :PredictionService
543
+ service_module = service_module.const_get :PredictionService
544
+ if transport == :rest
545
+ return false unless service_module.const_defined? :Rest
546
+ service_module = service_module.const_get :Rest
547
+ end
548
+ service_module.const_defined? :Client
549
+ rescue ::LoadError
550
+ false
551
+ end
552
+
301
553
  ##
302
554
  # Create a new client object for ProductService.
303
555
  #
@@ -311,6 +563,11 @@ module Google
311
563
  # You can also specify a different transport by passing `:rest` or `:grpc` in
312
564
  # the `transport` parameter.
313
565
  #
566
+ # Raises an exception if the currently installed versioned client gem for the
567
+ # given API version does not support the given transport of the ProductService service.
568
+ # You can determine whether the method will succeed by calling
569
+ # {Google::Cloud::Retail.product_service_available?}.
570
+ #
314
571
  # ## About ProductService
315
572
  #
316
573
  # Service for ingesting Product information
@@ -333,6 +590,37 @@ module Google
333
590
  service_module.const_get(:Client).new(&block)
334
591
  end
335
592
 
593
+ ##
594
+ # Determines whether the ProductService service is supported by the current client.
595
+ # If true, you can retrieve a client object by calling {Google::Cloud::Retail.product_service}.
596
+ # If false, that method will raise an exception. This could happen if the given
597
+ # API version does not exist or does not support the ProductService service,
598
+ # or if the versioned client gem needs an update to support the ProductService service.
599
+ #
600
+ # @param version [::String, ::Symbol] The API version to connect to. Optional.
601
+ # Defaults to `:v2`.
602
+ # @param transport [:grpc, :rest] The transport to use. Defaults to `:grpc`.
603
+ # @return [boolean] Whether the service is available.
604
+ #
605
+ def self.product_service_available? version: :v2, transport: :grpc
606
+ require "google/cloud/retail/#{version.to_s.downcase}"
607
+ package_name = Google::Cloud::Retail
608
+ .constants
609
+ .select { |sym| sym.to_s.downcase == version.to_s.downcase.tr("_", "") }
610
+ .first
611
+ return false unless package_name
612
+ service_module = Google::Cloud::Retail.const_get package_name
613
+ return false unless service_module.const_defined? :ProductService
614
+ service_module = service_module.const_get :ProductService
615
+ if transport == :rest
616
+ return false unless service_module.const_defined? :Rest
617
+ service_module = service_module.const_get :Rest
618
+ end
619
+ service_module.const_defined? :Client
620
+ rescue ::LoadError
621
+ false
622
+ end
623
+
336
624
  ##
337
625
  # Create a new client object for SearchService.
338
626
  #
@@ -346,6 +634,11 @@ module Google
346
634
  # You can also specify a different transport by passing `:rest` or `:grpc` in
347
635
  # the `transport` parameter.
348
636
  #
637
+ # Raises an exception if the currently installed versioned client gem for the
638
+ # given API version does not support the given transport of the SearchService service.
639
+ # You can determine whether the method will succeed by calling
640
+ # {Google::Cloud::Retail.search_service_available?}.
641
+ #
349
642
  # ## About SearchService
350
643
  #
351
644
  # Service for search.
@@ -370,6 +663,37 @@ module Google
370
663
  service_module.const_get(:Client).new(&block)
371
664
  end
372
665
 
666
+ ##
667
+ # Determines whether the SearchService service is supported by the current client.
668
+ # If true, you can retrieve a client object by calling {Google::Cloud::Retail.search_service}.
669
+ # If false, that method will raise an exception. This could happen if the given
670
+ # API version does not exist or does not support the SearchService service,
671
+ # or if the versioned client gem needs an update to support the SearchService service.
672
+ #
673
+ # @param version [::String, ::Symbol] The API version to connect to. Optional.
674
+ # Defaults to `:v2`.
675
+ # @param transport [:grpc, :rest] The transport to use. Defaults to `:grpc`.
676
+ # @return [boolean] Whether the service is available.
677
+ #
678
+ def self.search_service_available? version: :v2, transport: :grpc
679
+ require "google/cloud/retail/#{version.to_s.downcase}"
680
+ package_name = Google::Cloud::Retail
681
+ .constants
682
+ .select { |sym| sym.to_s.downcase == version.to_s.downcase.tr("_", "") }
683
+ .first
684
+ return false unless package_name
685
+ service_module = Google::Cloud::Retail.const_get package_name
686
+ return false unless service_module.const_defined? :SearchService
687
+ service_module = service_module.const_get :SearchService
688
+ if transport == :rest
689
+ return false unless service_module.const_defined? :Rest
690
+ service_module = service_module.const_get :Rest
691
+ end
692
+ service_module.const_defined? :Client
693
+ rescue ::LoadError
694
+ false
695
+ end
696
+
373
697
  ##
374
698
  # Create a new client object for ServingConfigService.
375
699
  #
@@ -383,6 +707,11 @@ module Google
383
707
  # You can also specify a different transport by passing `:rest` or `:grpc` in
384
708
  # the `transport` parameter.
385
709
  #
710
+ # Raises an exception if the currently installed versioned client gem for the
711
+ # given API version does not support the given transport of the ServingConfigService service.
712
+ # You can determine whether the method will succeed by calling
713
+ # {Google::Cloud::Retail.serving_config_service_available?}.
714
+ #
386
715
  # ## About ServingConfigService
387
716
  #
388
717
  # Service for modifying ServingConfig.
@@ -404,6 +733,37 @@ module Google
404
733
  service_module.const_get(:Client).new(&block)
405
734
  end
406
735
 
736
+ ##
737
+ # Determines whether the ServingConfigService service is supported by the current client.
738
+ # If true, you can retrieve a client object by calling {Google::Cloud::Retail.serving_config_service}.
739
+ # If false, that method will raise an exception. This could happen if the given
740
+ # API version does not exist or does not support the ServingConfigService service,
741
+ # or if the versioned client gem needs an update to support the ServingConfigService service.
742
+ #
743
+ # @param version [::String, ::Symbol] The API version to connect to. Optional.
744
+ # Defaults to `:v2`.
745
+ # @param transport [:grpc, :rest] The transport to use. Defaults to `:grpc`.
746
+ # @return [boolean] Whether the service is available.
747
+ #
748
+ def self.serving_config_service_available? version: :v2, transport: :grpc
749
+ require "google/cloud/retail/#{version.to_s.downcase}"
750
+ package_name = Google::Cloud::Retail
751
+ .constants
752
+ .select { |sym| sym.to_s.downcase == version.to_s.downcase.tr("_", "") }
753
+ .first
754
+ return false unless package_name
755
+ service_module = Google::Cloud::Retail.const_get package_name
756
+ return false unless service_module.const_defined? :ServingConfigService
757
+ service_module = service_module.const_get :ServingConfigService
758
+ if transport == :rest
759
+ return false unless service_module.const_defined? :Rest
760
+ service_module = service_module.const_get :Rest
761
+ end
762
+ service_module.const_defined? :Client
763
+ rescue ::LoadError
764
+ false
765
+ end
766
+
407
767
  ##
408
768
  # Create a new client object for UserEventService.
409
769
  #
@@ -417,6 +777,11 @@ module Google
417
777
  # You can also specify a different transport by passing `:rest` or `:grpc` in
418
778
  # the `transport` parameter.
419
779
  #
780
+ # Raises an exception if the currently installed versioned client gem for the
781
+ # given API version does not support the given transport of the UserEventService service.
782
+ # You can determine whether the method will succeed by calling
783
+ # {Google::Cloud::Retail.user_event_service_available?}.
784
+ #
420
785
  # ## About UserEventService
421
786
  #
422
787
  # Service for ingesting end user actions on the customer website.
@@ -438,6 +803,37 @@ module Google
438
803
  service_module.const_get(:Client).new(&block)
439
804
  end
440
805
 
806
+ ##
807
+ # Determines whether the UserEventService service is supported by the current client.
808
+ # If true, you can retrieve a client object by calling {Google::Cloud::Retail.user_event_service}.
809
+ # If false, that method will raise an exception. This could happen if the given
810
+ # API version does not exist or does not support the UserEventService service,
811
+ # or if the versioned client gem needs an update to support the UserEventService service.
812
+ #
813
+ # @param version [::String, ::Symbol] The API version to connect to. Optional.
814
+ # Defaults to `:v2`.
815
+ # @param transport [:grpc, :rest] The transport to use. Defaults to `:grpc`.
816
+ # @return [boolean] Whether the service is available.
817
+ #
818
+ def self.user_event_service_available? version: :v2, transport: :grpc
819
+ require "google/cloud/retail/#{version.to_s.downcase}"
820
+ package_name = Google::Cloud::Retail
821
+ .constants
822
+ .select { |sym| sym.to_s.downcase == version.to_s.downcase.tr("_", "") }
823
+ .first
824
+ return false unless package_name
825
+ service_module = Google::Cloud::Retail.const_get package_name
826
+ return false unless service_module.const_defined? :UserEventService
827
+ service_module = service_module.const_get :UserEventService
828
+ if transport == :rest
829
+ return false unless service_module.const_defined? :Rest
830
+ service_module = service_module.const_get :Rest
831
+ end
832
+ service_module.const_defined? :Client
833
+ rescue ::LoadError
834
+ false
835
+ end
836
+
441
837
  ##
442
838
  # Configure the google-cloud-retail library.
443
839
  #
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-cloud-retail
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.10.0
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Google LLC
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2024-10-24 00:00:00.000000000 Z
10
+ date: 2025-02-13 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: google-cloud-core
@@ -30,14 +29,14 @@ dependencies:
30
29
  requirements:
31
30
  - - "~>"
32
31
  - !ruby/object:Gem::Version
33
- version: '1.1'
32
+ version: '2.0'
34
33
  type: :runtime
35
34
  prerelease: false
36
35
  version_requirements: !ruby/object:Gem::Requirement
37
36
  requirements:
38
37
  - - "~>"
39
38
  - !ruby/object:Gem::Version
40
- version: '1.1'
39
+ version: '2.0'
41
40
  description: Retail enables you to build an end-to-end personalized recommendation
42
41
  system based on state-of-the-art deep learning ML models, without a need for expertise
43
42
  in ML or recommendation systems.
@@ -57,7 +56,6 @@ homepage: https://github.com/googleapis/google-cloud-ruby
57
56
  licenses:
58
57
  - Apache-2.0
59
58
  metadata: {}
60
- post_install_message:
61
59
  rdoc_options: []
62
60
  require_paths:
63
61
  - lib
@@ -65,15 +63,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
65
63
  requirements:
66
64
  - - ">="
67
65
  - !ruby/object:Gem::Version
68
- version: '2.7'
66
+ version: '3.0'
69
67
  required_rubygems_version: !ruby/object:Gem::Requirement
70
68
  requirements:
71
69
  - - ">="
72
70
  - !ruby/object:Gem::Version
73
71
  version: '0'
74
72
  requirements: []
75
- rubygems_version: 3.5.21
76
- signing_key:
73
+ rubygems_version: 3.6.3
77
74
  specification_version: 4
78
75
  summary: API Client library for the Retail API
79
76
  test_files: []