google-cloud-retail-v2 1.1.0 → 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +31 -21
- data/lib/google/cloud/retail/v2/analytics_service/client.rb +36 -2
- data/lib/google/cloud/retail/v2/analytics_service/operations.rb +19 -15
- data/lib/google/cloud/retail/v2/analytics_service/rest/client.rb +36 -2
- data/lib/google/cloud/retail/v2/analytics_service/rest/operations.rb +50 -38
- data/lib/google/cloud/retail/v2/analytics_service/rest/service_stub.rb +22 -8
- data/lib/google/cloud/retail/v2/catalog_service/client.rb +36 -12
- data/lib/google/cloud/retail/v2/catalog_service/rest/client.rb +36 -12
- data/lib/google/cloud/retail/v2/catalog_service/rest/service_stub.rb +102 -68
- data/lib/google/cloud/retail/v2/completion_service/client.rb +36 -3
- data/lib/google/cloud/retail/v2/completion_service/operations.rb +19 -15
- data/lib/google/cloud/retail/v2/completion_service/rest/client.rb +36 -3
- data/lib/google/cloud/retail/v2/completion_service/rest/operations.rb +50 -38
- data/lib/google/cloud/retail/v2/completion_service/rest/service_stub.rb +30 -14
- data/lib/google/cloud/retail/v2/control_service/client.rb +36 -6
- data/lib/google/cloud/retail/v2/control_service/rest/client.rb +36 -6
- data/lib/google/cloud/retail/v2/control_service/rest/service_stub.rb +54 -32
- data/lib/google/cloud/retail/v2/generative_question_service/client.rb +35 -6
- data/lib/google/cloud/retail/v2/generative_question_service/rest/client.rb +35 -6
- data/lib/google/cloud/retail/v2/generative_question_service/rest/service_stub.rb +54 -32
- data/lib/google/cloud/retail/v2/model_service/client.rb +38 -9
- data/lib/google/cloud/retail/v2/model_service/operations.rb +19 -15
- data/lib/google/cloud/retail/v2/model_service/rest/client.rb +38 -9
- data/lib/google/cloud/retail/v2/model_service/rest/operations.rb +50 -38
- data/lib/google/cloud/retail/v2/model_service/rest/service_stub.rb +78 -50
- data/lib/google/cloud/retail/v2/prediction_service/client.rb +35 -2
- data/lib/google/cloud/retail/v2/prediction_service/rest/client.rb +35 -2
- data/lib/google/cloud/retail/v2/prediction_service/rest/service_stub.rb +22 -8
- data/lib/google/cloud/retail/v2/product_service/client.rb +43 -13
- data/lib/google/cloud/retail/v2/product_service/operations.rb +19 -15
- data/lib/google/cloud/retail/v2/product_service/rest/client.rb +43 -13
- data/lib/google/cloud/retail/v2/product_service/rest/operations.rb +50 -38
- data/lib/google/cloud/retail/v2/product_service/rest/service_stub.rb +110 -74
- data/lib/google/cloud/retail/v2/search_service/client.rb +36 -2
- data/lib/google/cloud/retail/v2/search_service/rest/client.rb +35 -2
- data/lib/google/cloud/retail/v2/search_service/rest/service_stub.rb +22 -8
- data/lib/google/cloud/retail/v2/serving_config_service/client.rb +36 -8
- data/lib/google/cloud/retail/v2/serving_config_service/rest/client.rb +36 -8
- data/lib/google/cloud/retail/v2/serving_config_service/rest/service_stub.rb +70 -44
- data/lib/google/cloud/retail/v2/user_event_service/client.rb +38 -6
- data/lib/google/cloud/retail/v2/user_event_service/operations.rb +19 -15
- data/lib/google/cloud/retail/v2/user_event_service/rest/client.rb +38 -6
- data/lib/google/cloud/retail/v2/user_event_service/rest/operations.rb +50 -38
- data/lib/google/cloud/retail/v2/user_event_service/rest/service_stub.rb +54 -32
- data/lib/google/cloud/retail/v2/version.rb +1 -1
- data/proto_docs/google/api/client.rb +39 -0
- data/proto_docs/google/cloud/retail/v2/common.rb +28 -0
- data/proto_docs/google/cloud/retail/v2/export_config.rb +4 -0
- data/proto_docs/google/cloud/retail/v2/import_config.rb +12 -0
- data/proto_docs/google/cloud/retail/v2/product.rb +4 -0
- data/proto_docs/google/cloud/retail/v2/search_service.rb +12 -0
- data/proto_docs/google/longrunning/operations.rb +23 -14
- data/proto_docs/google/protobuf/struct.rb +12 -0
- metadata +6 -9
@@ -30,7 +30,8 @@ module Google
|
|
30
30
|
# including transcoding, making the REST call, and deserialing the response.
|
31
31
|
#
|
32
32
|
class ServiceStub
|
33
|
-
|
33
|
+
# @private
|
34
|
+
def initialize endpoint:, endpoint_template:, universe_domain:, credentials:, logger:
|
34
35
|
# These require statements are intentionally placed here to initialize
|
35
36
|
# the REST modules only when it's required.
|
36
37
|
require "gapic/rest"
|
@@ -40,7 +41,9 @@ module Google
|
|
40
41
|
universe_domain: universe_domain,
|
41
42
|
credentials: credentials,
|
42
43
|
numeric_enums: true,
|
43
|
-
|
44
|
+
service_name: self.class,
|
45
|
+
raise_faraday_errors: false,
|
46
|
+
logger: logger
|
44
47
|
end
|
45
48
|
|
46
49
|
##
|
@@ -61,6 +64,15 @@ module Google
|
|
61
64
|
@client_stub.endpoint
|
62
65
|
end
|
63
66
|
|
67
|
+
##
|
68
|
+
# The logger used for request/response debug logging.
|
69
|
+
#
|
70
|
+
# @return [Logger]
|
71
|
+
#
|
72
|
+
def logger stub: false
|
73
|
+
stub ? @client_stub.stub_logger : @client_stub.logger
|
74
|
+
end
|
75
|
+
|
64
76
|
##
|
65
77
|
# Baseline implementation for the create_product REST call
|
66
78
|
#
|
@@ -87,16 +99,18 @@ module Google
|
|
87
99
|
|
88
100
|
response = @client_stub.make_http_request(
|
89
101
|
verb,
|
90
|
-
uri:
|
91
|
-
body:
|
92
|
-
params:
|
102
|
+
uri: uri,
|
103
|
+
body: body || "",
|
104
|
+
params: query_string_params,
|
105
|
+
method_name: "create_product",
|
93
106
|
options: options
|
94
107
|
)
|
95
108
|
operation = ::Gapic::Rest::TransportOperation.new response
|
96
109
|
result = ::Google::Cloud::Retail::V2::Product.decode_json response.body, ignore_unknown_fields: true
|
97
|
-
|
98
|
-
|
99
|
-
|
110
|
+
catch :response do
|
111
|
+
yield result, operation if block_given?
|
112
|
+
result
|
113
|
+
end
|
100
114
|
end
|
101
115
|
|
102
116
|
##
|
@@ -125,16 +139,18 @@ module Google
|
|
125
139
|
|
126
140
|
response = @client_stub.make_http_request(
|
127
141
|
verb,
|
128
|
-
uri:
|
129
|
-
body:
|
130
|
-
params:
|
142
|
+
uri: uri,
|
143
|
+
body: body || "",
|
144
|
+
params: query_string_params,
|
145
|
+
method_name: "get_product",
|
131
146
|
options: options
|
132
147
|
)
|
133
148
|
operation = ::Gapic::Rest::TransportOperation.new response
|
134
149
|
result = ::Google::Cloud::Retail::V2::Product.decode_json response.body, ignore_unknown_fields: true
|
135
|
-
|
136
|
-
|
137
|
-
|
150
|
+
catch :response do
|
151
|
+
yield result, operation if block_given?
|
152
|
+
result
|
153
|
+
end
|
138
154
|
end
|
139
155
|
|
140
156
|
##
|
@@ -163,16 +179,18 @@ module Google
|
|
163
179
|
|
164
180
|
response = @client_stub.make_http_request(
|
165
181
|
verb,
|
166
|
-
uri:
|
167
|
-
body:
|
168
|
-
params:
|
182
|
+
uri: uri,
|
183
|
+
body: body || "",
|
184
|
+
params: query_string_params,
|
185
|
+
method_name: "list_products",
|
169
186
|
options: options
|
170
187
|
)
|
171
188
|
operation = ::Gapic::Rest::TransportOperation.new response
|
172
189
|
result = ::Google::Cloud::Retail::V2::ListProductsResponse.decode_json response.body, ignore_unknown_fields: true
|
173
|
-
|
174
|
-
|
175
|
-
|
190
|
+
catch :response do
|
191
|
+
yield result, operation if block_given?
|
192
|
+
result
|
193
|
+
end
|
176
194
|
end
|
177
195
|
|
178
196
|
##
|
@@ -201,16 +219,18 @@ module Google
|
|
201
219
|
|
202
220
|
response = @client_stub.make_http_request(
|
203
221
|
verb,
|
204
|
-
uri:
|
205
|
-
body:
|
206
|
-
params:
|
222
|
+
uri: uri,
|
223
|
+
body: body || "",
|
224
|
+
params: query_string_params,
|
225
|
+
method_name: "update_product",
|
207
226
|
options: options
|
208
227
|
)
|
209
228
|
operation = ::Gapic::Rest::TransportOperation.new response
|
210
229
|
result = ::Google::Cloud::Retail::V2::Product.decode_json response.body, ignore_unknown_fields: true
|
211
|
-
|
212
|
-
|
213
|
-
|
230
|
+
catch :response do
|
231
|
+
yield result, operation if block_given?
|
232
|
+
result
|
233
|
+
end
|
214
234
|
end
|
215
235
|
|
216
236
|
##
|
@@ -239,16 +259,18 @@ module Google
|
|
239
259
|
|
240
260
|
response = @client_stub.make_http_request(
|
241
261
|
verb,
|
242
|
-
uri:
|
243
|
-
body:
|
244
|
-
params:
|
262
|
+
uri: uri,
|
263
|
+
body: body || "",
|
264
|
+
params: query_string_params,
|
265
|
+
method_name: "delete_product",
|
245
266
|
options: options
|
246
267
|
)
|
247
268
|
operation = ::Gapic::Rest::TransportOperation.new response
|
248
269
|
result = ::Google::Protobuf::Empty.decode_json response.body, ignore_unknown_fields: true
|
249
|
-
|
250
|
-
|
251
|
-
|
270
|
+
catch :response do
|
271
|
+
yield result, operation if block_given?
|
272
|
+
result
|
273
|
+
end
|
252
274
|
end
|
253
275
|
|
254
276
|
##
|
@@ -277,16 +299,18 @@ module Google
|
|
277
299
|
|
278
300
|
response = @client_stub.make_http_request(
|
279
301
|
verb,
|
280
|
-
uri:
|
281
|
-
body:
|
282
|
-
params:
|
302
|
+
uri: uri,
|
303
|
+
body: body || "",
|
304
|
+
params: query_string_params,
|
305
|
+
method_name: "purge_products",
|
283
306
|
options: options
|
284
307
|
)
|
285
308
|
operation = ::Gapic::Rest::TransportOperation.new response
|
286
309
|
result = ::Google::Longrunning::Operation.decode_json response.body, ignore_unknown_fields: true
|
287
|
-
|
288
|
-
|
289
|
-
|
310
|
+
catch :response do
|
311
|
+
yield result, operation if block_given?
|
312
|
+
result
|
313
|
+
end
|
290
314
|
end
|
291
315
|
|
292
316
|
##
|
@@ -315,16 +339,18 @@ module Google
|
|
315
339
|
|
316
340
|
response = @client_stub.make_http_request(
|
317
341
|
verb,
|
318
|
-
uri:
|
319
|
-
body:
|
320
|
-
params:
|
342
|
+
uri: uri,
|
343
|
+
body: body || "",
|
344
|
+
params: query_string_params,
|
345
|
+
method_name: "import_products",
|
321
346
|
options: options
|
322
347
|
)
|
323
348
|
operation = ::Gapic::Rest::TransportOperation.new response
|
324
349
|
result = ::Google::Longrunning::Operation.decode_json response.body, ignore_unknown_fields: true
|
325
|
-
|
326
|
-
|
327
|
-
|
350
|
+
catch :response do
|
351
|
+
yield result, operation if block_given?
|
352
|
+
result
|
353
|
+
end
|
328
354
|
end
|
329
355
|
|
330
356
|
##
|
@@ -353,16 +379,18 @@ module Google
|
|
353
379
|
|
354
380
|
response = @client_stub.make_http_request(
|
355
381
|
verb,
|
356
|
-
uri:
|
357
|
-
body:
|
358
|
-
params:
|
382
|
+
uri: uri,
|
383
|
+
body: body || "",
|
384
|
+
params: query_string_params,
|
385
|
+
method_name: "set_inventory",
|
359
386
|
options: options
|
360
387
|
)
|
361
388
|
operation = ::Gapic::Rest::TransportOperation.new response
|
362
389
|
result = ::Google::Longrunning::Operation.decode_json response.body, ignore_unknown_fields: true
|
363
|
-
|
364
|
-
|
365
|
-
|
390
|
+
catch :response do
|
391
|
+
yield result, operation if block_given?
|
392
|
+
result
|
393
|
+
end
|
366
394
|
end
|
367
395
|
|
368
396
|
##
|
@@ -391,16 +419,18 @@ module Google
|
|
391
419
|
|
392
420
|
response = @client_stub.make_http_request(
|
393
421
|
verb,
|
394
|
-
uri:
|
395
|
-
body:
|
396
|
-
params:
|
422
|
+
uri: uri,
|
423
|
+
body: body || "",
|
424
|
+
params: query_string_params,
|
425
|
+
method_name: "add_fulfillment_places",
|
397
426
|
options: options
|
398
427
|
)
|
399
428
|
operation = ::Gapic::Rest::TransportOperation.new response
|
400
429
|
result = ::Google::Longrunning::Operation.decode_json response.body, ignore_unknown_fields: true
|
401
|
-
|
402
|
-
|
403
|
-
|
430
|
+
catch :response do
|
431
|
+
yield result, operation if block_given?
|
432
|
+
result
|
433
|
+
end
|
404
434
|
end
|
405
435
|
|
406
436
|
##
|
@@ -429,16 +459,18 @@ module Google
|
|
429
459
|
|
430
460
|
response = @client_stub.make_http_request(
|
431
461
|
verb,
|
432
|
-
uri:
|
433
|
-
body:
|
434
|
-
params:
|
462
|
+
uri: uri,
|
463
|
+
body: body || "",
|
464
|
+
params: query_string_params,
|
465
|
+
method_name: "remove_fulfillment_places",
|
435
466
|
options: options
|
436
467
|
)
|
437
468
|
operation = ::Gapic::Rest::TransportOperation.new response
|
438
469
|
result = ::Google::Longrunning::Operation.decode_json response.body, ignore_unknown_fields: true
|
439
|
-
|
440
|
-
|
441
|
-
|
470
|
+
catch :response do
|
471
|
+
yield result, operation if block_given?
|
472
|
+
result
|
473
|
+
end
|
442
474
|
end
|
443
475
|
|
444
476
|
##
|
@@ -467,16 +499,18 @@ module Google
|
|
467
499
|
|
468
500
|
response = @client_stub.make_http_request(
|
469
501
|
verb,
|
470
|
-
uri:
|
471
|
-
body:
|
472
|
-
params:
|
502
|
+
uri: uri,
|
503
|
+
body: body || "",
|
504
|
+
params: query_string_params,
|
505
|
+
method_name: "add_local_inventories",
|
473
506
|
options: options
|
474
507
|
)
|
475
508
|
operation = ::Gapic::Rest::TransportOperation.new response
|
476
509
|
result = ::Google::Longrunning::Operation.decode_json response.body, ignore_unknown_fields: true
|
477
|
-
|
478
|
-
|
479
|
-
|
510
|
+
catch :response do
|
511
|
+
yield result, operation if block_given?
|
512
|
+
result
|
513
|
+
end
|
480
514
|
end
|
481
515
|
|
482
516
|
##
|
@@ -505,16 +539,18 @@ module Google
|
|
505
539
|
|
506
540
|
response = @client_stub.make_http_request(
|
507
541
|
verb,
|
508
|
-
uri:
|
509
|
-
body:
|
510
|
-
params:
|
542
|
+
uri: uri,
|
543
|
+
body: body || "",
|
544
|
+
params: query_string_params,
|
545
|
+
method_name: "remove_local_inventories",
|
511
546
|
options: options
|
512
547
|
)
|
513
548
|
operation = ::Gapic::Rest::TransportOperation.new response
|
514
549
|
result = ::Google::Longrunning::Operation.decode_json response.body, ignore_unknown_fields: true
|
515
|
-
|
516
|
-
|
517
|
-
|
550
|
+
catch :response do
|
551
|
+
yield result, operation if block_given?
|
552
|
+
result
|
553
|
+
end
|
518
554
|
end
|
519
555
|
|
520
556
|
##
|
@@ -166,14 +166,26 @@ module Google
|
|
166
166
|
universe_domain: @config.universe_domain,
|
167
167
|
channel_args: @config.channel_args,
|
168
168
|
interceptors: @config.interceptors,
|
169
|
-
channel_pool_config: @config.channel_pool
|
169
|
+
channel_pool_config: @config.channel_pool,
|
170
|
+
logger: @config.logger
|
170
171
|
)
|
171
172
|
|
173
|
+
@search_service_stub.stub_logger&.info do |entry|
|
174
|
+
entry.set_system_name
|
175
|
+
entry.set_service
|
176
|
+
entry.message = "Created client for #{entry.service}"
|
177
|
+
entry.set_credentials_fields credentials
|
178
|
+
entry.set "customEndpoint", @config.endpoint if @config.endpoint
|
179
|
+
entry.set "defaultTimeout", @config.timeout if @config.timeout
|
180
|
+
entry.set "quotaProject", @quota_project_id if @quota_project_id
|
181
|
+
end
|
182
|
+
|
172
183
|
@location_client = Google::Cloud::Location::Locations::Client.new do |config|
|
173
184
|
config.credentials = credentials
|
174
185
|
config.quota_project = @quota_project_id
|
175
186
|
config.endpoint = @search_service_stub.endpoint
|
176
187
|
config.universe_domain = @search_service_stub.universe_domain
|
188
|
+
config.logger = @search_service_stub.logger if config.respond_to? :logger=
|
177
189
|
end
|
178
190
|
end
|
179
191
|
|
@@ -184,6 +196,15 @@ module Google
|
|
184
196
|
#
|
185
197
|
attr_reader :location_client
|
186
198
|
|
199
|
+
##
|
200
|
+
# The logger used for request/response debug logging.
|
201
|
+
#
|
202
|
+
# @return [Logger]
|
203
|
+
#
|
204
|
+
def logger
|
205
|
+
@search_service_stub.logger
|
206
|
+
end
|
207
|
+
|
187
208
|
# Service calls
|
188
209
|
|
189
210
|
##
|
@@ -515,7 +536,7 @@ module Google
|
|
515
536
|
@search_service_stub.call_rpc :search, request, options: options do |response, operation|
|
516
537
|
response = ::Gapic::PagedEnumerable.new @search_service_stub, :search, request, response, operation, options
|
517
538
|
yield response, operation if block_given?
|
518
|
-
|
539
|
+
throw :response, response
|
519
540
|
end
|
520
541
|
rescue ::GRPC::BadStatus => e
|
521
542
|
raise ::Google::Cloud::Error.from_error(e)
|
@@ -565,6 +586,13 @@ module Google
|
|
565
586
|
# * (`GRPC::Core::Channel`) a gRPC channel with included credentials
|
566
587
|
# * (`GRPC::Core::ChannelCredentials`) a gRPC credentails object
|
567
588
|
# * (`nil`) indicating no credentials
|
589
|
+
#
|
590
|
+
# Warning: If you accept a credential configuration (JSON file or Hash) from an
|
591
|
+
# external source for authentication to Google Cloud, you must validate it before
|
592
|
+
# providing it to a Google API client library. Providing an unvalidated credential
|
593
|
+
# configuration to Google APIs can compromise the security of your systems and data.
|
594
|
+
# For more information, refer to [Validate credential configurations from external
|
595
|
+
# sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials).
|
568
596
|
# @return [::Object]
|
569
597
|
# @!attribute [rw] scope
|
570
598
|
# The OAuth scopes
|
@@ -604,6 +632,11 @@ module Google
|
|
604
632
|
# default endpoint URL. The default value of nil uses the environment
|
605
633
|
# universe (usually the default "googleapis.com" universe).
|
606
634
|
# @return [::String,nil]
|
635
|
+
# @!attribute [rw] logger
|
636
|
+
# A custom logger to use for request/response debug logging, or the value
|
637
|
+
# `:default` (the default) to construct a default logger, or `nil` to
|
638
|
+
# explicitly disable logging.
|
639
|
+
# @return [::Logger,:default,nil]
|
607
640
|
#
|
608
641
|
class Configuration
|
609
642
|
extend ::Gapic::Config
|
@@ -628,6 +661,7 @@ module Google
|
|
628
661
|
config_attr :retry_policy, nil, ::Hash, ::Proc, nil
|
629
662
|
config_attr :quota_project, nil, ::String, nil
|
630
663
|
config_attr :universe_domain, nil, ::String, nil
|
664
|
+
config_attr :logger, :default, ::Logger, nil, :default
|
631
665
|
|
632
666
|
# @private
|
633
667
|
def initialize parent_config = nil
|
@@ -159,14 +159,26 @@ module Google
|
|
159
159
|
endpoint: @config.endpoint,
|
160
160
|
endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
|
161
161
|
universe_domain: @config.universe_domain,
|
162
|
-
credentials: credentials
|
162
|
+
credentials: credentials,
|
163
|
+
logger: @config.logger
|
163
164
|
)
|
164
165
|
|
166
|
+
@search_service_stub.logger(stub: true)&.info do |entry|
|
167
|
+
entry.set_system_name
|
168
|
+
entry.set_service
|
169
|
+
entry.message = "Created client for #{entry.service}"
|
170
|
+
entry.set_credentials_fields credentials
|
171
|
+
entry.set "customEndpoint", @config.endpoint if @config.endpoint
|
172
|
+
entry.set "defaultTimeout", @config.timeout if @config.timeout
|
173
|
+
entry.set "quotaProject", @quota_project_id if @quota_project_id
|
174
|
+
end
|
175
|
+
|
165
176
|
@location_client = Google::Cloud::Location::Locations::Rest::Client.new do |config|
|
166
177
|
config.credentials = credentials
|
167
178
|
config.quota_project = @quota_project_id
|
168
179
|
config.endpoint = @search_service_stub.endpoint
|
169
180
|
config.universe_domain = @search_service_stub.universe_domain
|
181
|
+
config.logger = @search_service_stub.logger if config.respond_to? :logger=
|
170
182
|
end
|
171
183
|
end
|
172
184
|
|
@@ -177,6 +189,15 @@ module Google
|
|
177
189
|
#
|
178
190
|
attr_reader :location_client
|
179
191
|
|
192
|
+
##
|
193
|
+
# The logger used for request/response debug logging.
|
194
|
+
#
|
195
|
+
# @return [Logger]
|
196
|
+
#
|
197
|
+
def logger
|
198
|
+
@search_service_stub.logger
|
199
|
+
end
|
200
|
+
|
180
201
|
# Service calls
|
181
202
|
|
182
203
|
##
|
@@ -500,7 +521,6 @@ module Google
|
|
500
521
|
|
501
522
|
@search_service_stub.search request, options do |result, operation|
|
502
523
|
yield result, operation if block_given?
|
503
|
-
return result
|
504
524
|
end
|
505
525
|
rescue ::Gapic::Rest::Error => e
|
506
526
|
raise ::Google::Cloud::Error.from_error(e)
|
@@ -548,6 +568,13 @@ module Google
|
|
548
568
|
# * (`Signet::OAuth2::Client`) A signet oauth2 client object
|
549
569
|
# (see the [signet docs](https://rubydoc.info/gems/signet/Signet/OAuth2/Client))
|
550
570
|
# * (`nil`) indicating no credentials
|
571
|
+
#
|
572
|
+
# Warning: If you accept a credential configuration (JSON file or Hash) from an
|
573
|
+
# external source for authentication to Google Cloud, you must validate it before
|
574
|
+
# providing it to a Google API client library. Providing an unvalidated credential
|
575
|
+
# configuration to Google APIs can compromise the security of your systems and data.
|
576
|
+
# For more information, refer to [Validate credential configurations from external
|
577
|
+
# sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials).
|
551
578
|
# @return [::Object]
|
552
579
|
# @!attribute [rw] scope
|
553
580
|
# The OAuth scopes
|
@@ -580,6 +607,11 @@ module Google
|
|
580
607
|
# default endpoint URL. The default value of nil uses the environment
|
581
608
|
# universe (usually the default "googleapis.com" universe).
|
582
609
|
# @return [::String,nil]
|
610
|
+
# @!attribute [rw] logger
|
611
|
+
# A custom logger to use for request/response debug logging, or the value
|
612
|
+
# `:default` (the default) to construct a default logger, or `nil` to
|
613
|
+
# explicitly disable logging.
|
614
|
+
# @return [::Logger,:default,nil]
|
583
615
|
#
|
584
616
|
class Configuration
|
585
617
|
extend ::Gapic::Config
|
@@ -601,6 +633,7 @@ module Google
|
|
601
633
|
config_attr :retry_policy, nil, ::Hash, ::Proc, nil
|
602
634
|
config_attr :quota_project, nil, ::String, nil
|
603
635
|
config_attr :universe_domain, nil, ::String, nil
|
636
|
+
config_attr :logger, :default, ::Logger, nil, :default
|
604
637
|
|
605
638
|
# @private
|
606
639
|
def initialize parent_config = nil
|
@@ -30,7 +30,8 @@ module Google
|
|
30
30
|
# including transcoding, making the REST call, and deserialing the response.
|
31
31
|
#
|
32
32
|
class ServiceStub
|
33
|
-
|
33
|
+
# @private
|
34
|
+
def initialize endpoint:, endpoint_template:, universe_domain:, credentials:, logger:
|
34
35
|
# These require statements are intentionally placed here to initialize
|
35
36
|
# the REST modules only when it's required.
|
36
37
|
require "gapic/rest"
|
@@ -40,7 +41,9 @@ module Google
|
|
40
41
|
universe_domain: universe_domain,
|
41
42
|
credentials: credentials,
|
42
43
|
numeric_enums: true,
|
43
|
-
|
44
|
+
service_name: self.class,
|
45
|
+
raise_faraday_errors: false,
|
46
|
+
logger: logger
|
44
47
|
end
|
45
48
|
|
46
49
|
##
|
@@ -61,6 +64,15 @@ module Google
|
|
61
64
|
@client_stub.endpoint
|
62
65
|
end
|
63
66
|
|
67
|
+
##
|
68
|
+
# The logger used for request/response debug logging.
|
69
|
+
#
|
70
|
+
# @return [Logger]
|
71
|
+
#
|
72
|
+
def logger stub: false
|
73
|
+
stub ? @client_stub.stub_logger : @client_stub.logger
|
74
|
+
end
|
75
|
+
|
64
76
|
##
|
65
77
|
# Baseline implementation for the search REST call
|
66
78
|
#
|
@@ -87,16 +99,18 @@ module Google
|
|
87
99
|
|
88
100
|
response = @client_stub.make_http_request(
|
89
101
|
verb,
|
90
|
-
uri:
|
91
|
-
body:
|
92
|
-
params:
|
102
|
+
uri: uri,
|
103
|
+
body: body || "",
|
104
|
+
params: query_string_params,
|
105
|
+
method_name: "search",
|
93
106
|
options: options
|
94
107
|
)
|
95
108
|
operation = ::Gapic::Rest::TransportOperation.new response
|
96
109
|
result = ::Google::Cloud::Retail::V2::SearchResponse.decode_json response.body, ignore_unknown_fields: true
|
97
|
-
|
98
|
-
|
99
|
-
|
110
|
+
catch :response do
|
111
|
+
yield result, operation if block_given?
|
112
|
+
result
|
113
|
+
end
|
100
114
|
end
|
101
115
|
|
102
116
|
##
|