google-cloud-discovery_engine-v1beta 0.5.0 → 0.7.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.
Files changed (34) hide show
  1. checksums.yaml +4 -4
  2. data/AUTHENTICATION.md +72 -99
  3. data/lib/google/cloud/discovery_engine/v1beta/completion_service/client.rb +42 -9
  4. data/lib/google/cloud/discovery_engine/v1beta/completion_service/rest/client.rb +50 -7
  5. data/lib/google/cloud/discovery_engine/v1beta/completion_service/rest/service_stub.rb +14 -2
  6. data/lib/google/cloud/discovery_engine/v1beta/conversational_search_service/client.rb +42 -9
  7. data/lib/google/cloud/discovery_engine/v1beta/conversational_search_service/rest/client.rb +134 -7
  8. data/lib/google/cloud/discovery_engine/v1beta/conversational_search_service/rest/service_stub.rb +14 -2
  9. data/lib/google/cloud/discovery_engine/v1beta/document_service/client.rb +43 -9
  10. data/lib/google/cloud/discovery_engine/v1beta/document_service/operations.rb +38 -7
  11. data/lib/google/cloud/discovery_engine/v1beta/document_service/rest/client.rb +165 -7
  12. data/lib/google/cloud/discovery_engine/v1beta/document_service/rest/operations.rb +108 -8
  13. data/lib/google/cloud/discovery_engine/v1beta/document_service/rest/service_stub.rb +14 -2
  14. data/lib/google/cloud/discovery_engine/v1beta/recommendation_service/client.rb +42 -9
  15. data/lib/google/cloud/discovery_engine/v1beta/recommendation_service/rest/client.rb +50 -7
  16. data/lib/google/cloud/discovery_engine/v1beta/recommendation_service/rest/service_stub.rb +14 -2
  17. data/lib/google/cloud/discovery_engine/v1beta/schema_service/client.rb +43 -9
  18. data/lib/google/cloud/discovery_engine/v1beta/schema_service/operations.rb +38 -7
  19. data/lib/google/cloud/discovery_engine/v1beta/schema_service/rest/client.rb +140 -7
  20. data/lib/google/cloud/discovery_engine/v1beta/schema_service/rest/operations.rb +108 -8
  21. data/lib/google/cloud/discovery_engine/v1beta/schema_service/rest/service_stub.rb +14 -2
  22. data/lib/google/cloud/discovery_engine/v1beta/search_service/client.rb +42 -9
  23. data/lib/google/cloud/discovery_engine/v1beta/search_service/rest/client.rb +54 -7
  24. data/lib/google/cloud/discovery_engine/v1beta/search_service/rest/service_stub.rb +14 -2
  25. data/lib/google/cloud/discovery_engine/v1beta/user_event_service/client.rb +43 -9
  26. data/lib/google/cloud/discovery_engine/v1beta/user_event_service/operations.rb +38 -7
  27. data/lib/google/cloud/discovery_engine/v1beta/user_event_service/rest/client.rb +90 -7
  28. data/lib/google/cloud/discovery_engine/v1beta/user_event_service/rest/operations.rb +108 -8
  29. data/lib/google/cloud/discovery_engine/v1beta/user_event_service/rest/service_stub.rb +14 -2
  30. data/lib/google/cloud/discovery_engine/v1beta/version.rb +1 -1
  31. data/proto_docs/google/api/client.rb +14 -0
  32. data/proto_docs/google/cloud/discoveryengine/v1beta/conversation.rb +3 -0
  33. data/proto_docs/google/cloud/discoveryengine/v1beta/search_service.rb +2 -0
  34. metadata +7 -7
@@ -26,6 +26,9 @@ module Google
26
26
  module Rest
27
27
  # Service that implements Longrunning Operations API.
28
28
  class Operations
29
+ # @private
30
+ DEFAULT_ENDPOINT_TEMPLATE = "discoveryengine.$UNIVERSE_DOMAIN$"
31
+
29
32
  # @private
30
33
  attr_reader :operations_stub
31
34
 
@@ -60,6 +63,15 @@ module Google
60
63
  @config
61
64
  end
62
65
 
66
+ ##
67
+ # The effective universe domain
68
+ #
69
+ # @return [String]
70
+ #
71
+ def universe_domain
72
+ @operations_stub.universe_domain
73
+ end
74
+
63
75
  ##
64
76
  # Create a new Operations client object.
65
77
  #
@@ -84,8 +96,10 @@ module Google
84
96
  @quota_project_id ||= credentials.quota_project_id if credentials.respond_to? :quota_project_id
85
97
 
86
98
  @operations_stub = OperationsServiceStub.new(
87
- endpoint: @config.endpoint,
88
- credentials: credentials
99
+ endpoint: @config.endpoint,
100
+ endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
101
+ universe_domain: @config.universe_domain,
102
+ credentials: credentials
89
103
  )
90
104
 
91
105
  # Used by an LRO wrapper for some methods of this service
@@ -136,6 +150,26 @@ module Google
136
150
  # @return [::Gapic::Operation]
137
151
  #
138
152
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
153
+ #
154
+ # @example Basic example
155
+ # require "google/longrunning"
156
+ #
157
+ # # Create a client object. The client can be reused for multiple calls.
158
+ # client = Google::Longrunning::Operations::Rest::Client.new
159
+ #
160
+ # # Create a request. To set request fields, pass in keyword arguments.
161
+ # request = Google::Longrunning::ListOperationsRequest.new
162
+ #
163
+ # # Call the list_operations method.
164
+ # result = client.list_operations request
165
+ #
166
+ # # The returned object is of type Gapic::PagedEnumerable. You can iterate
167
+ # # over elements, and API calls will be issued to fetch pages as needed.
168
+ # result.each do |item|
169
+ # # Each element is of type ::Google::Longrunning::Operation.
170
+ # p item
171
+ # end
172
+ #
139
173
  def list_operations request, options = nil
140
174
  raise ::ArgumentError, "request must be provided" if request.nil?
141
175
 
@@ -201,6 +235,29 @@ module Google
201
235
  # @return [::Gapic::Operation]
202
236
  #
203
237
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
238
+ #
239
+ # @example Basic example
240
+ # require "google/longrunning"
241
+ #
242
+ # # Create a client object. The client can be reused for multiple calls.
243
+ # client = Google::Longrunning::Operations::Rest::Client.new
244
+ #
245
+ # # Create a request. To set request fields, pass in keyword arguments.
246
+ # request = Google::Longrunning::GetOperationRequest.new
247
+ #
248
+ # # Call the get_operation method.
249
+ # result = client.get_operation request
250
+ #
251
+ # # The returned object is of type Gapic::Operation. You can use it to
252
+ # # check the status of an operation, cancel it, or wait for results.
253
+ # # Here is how to wait for a response.
254
+ # result.wait_until_done! timeout: 60
255
+ # if result.response?
256
+ # p result.response
257
+ # else
258
+ # puts "No response received."
259
+ # end
260
+ #
204
261
  def get_operation request, options = nil
205
262
  raise ::ArgumentError, "request must be provided" if request.nil?
206
263
 
@@ -267,6 +324,22 @@ module Google
267
324
  # @return [::Google::Protobuf::Empty]
268
325
  #
269
326
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
327
+ #
328
+ # @example Basic example
329
+ # require "google/longrunning"
330
+ #
331
+ # # Create a client object. The client can be reused for multiple calls.
332
+ # client = Google::Longrunning::Operations::Rest::Client.new
333
+ #
334
+ # # Create a request. To set request fields, pass in keyword arguments.
335
+ # request = Google::Longrunning::DeleteOperationRequest.new
336
+ #
337
+ # # Call the delete_operation method.
338
+ # result = client.delete_operation request
339
+ #
340
+ # # The returned object is of type Google::Protobuf::Empty.
341
+ # p result
342
+ #
270
343
  def delete_operation request, options = nil
271
344
  raise ::ArgumentError, "request must be provided" if request.nil?
272
345
 
@@ -338,6 +411,22 @@ module Google
338
411
  # @return [::Google::Protobuf::Empty]
339
412
  #
340
413
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
414
+ #
415
+ # @example Basic example
416
+ # require "google/longrunning"
417
+ #
418
+ # # Create a client object. The client can be reused for multiple calls.
419
+ # client = Google::Longrunning::Operations::Rest::Client.new
420
+ #
421
+ # # Create a request. To set request fields, pass in keyword arguments.
422
+ # request = Google::Longrunning::CancelOperationRequest.new
423
+ #
424
+ # # Call the cancel_operation method.
425
+ # result = client.cancel_operation request
426
+ #
427
+ # # The returned object is of type Google::Protobuf::Empty.
428
+ # p result
429
+ #
341
430
  def cancel_operation request, options = nil
342
431
  raise ::ArgumentError, "request must be provided" if request.nil?
343
432
 
@@ -403,9 +492,9 @@ module Google
403
492
  # end
404
493
  #
405
494
  # @!attribute [rw] endpoint
406
- # The hostname or hostname:port of the service endpoint.
407
- # Defaults to `"discoveryengine.googleapis.com"`.
408
- # @return [::String]
495
+ # A custom service endpoint, as a hostname or hostname:port. The default is
496
+ # nil, indicating to use the default endpoint in the current universe domain.
497
+ # @return [::String,nil]
409
498
  # @!attribute [rw] credentials
410
499
  # Credentials to send with calls. You may provide any of the following types:
411
500
  # * (`String`) The path to a service account key file in JSON format
@@ -442,13 +531,20 @@ module Google
442
531
  # @!attribute [rw] quota_project
443
532
  # A separate project against which to charge quota.
444
533
  # @return [::String]
534
+ # @!attribute [rw] universe_domain
535
+ # The universe domain within which to make requests. This determines the
536
+ # default endpoint URL. The default value of nil uses the environment
537
+ # universe (usually the default "googleapis.com" universe).
538
+ # @return [::String,nil]
445
539
  #
446
540
  class Configuration
447
541
  extend ::Gapic::Config
448
542
 
543
+ # @private
544
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
449
545
  DEFAULT_ENDPOINT = "discoveryengine.googleapis.com"
450
546
 
451
- config_attr :endpoint, DEFAULT_ENDPOINT, ::String
547
+ config_attr :endpoint, nil, ::String, nil
452
548
  config_attr :credentials, nil do |value|
453
549
  allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
454
550
  allowed.any? { |klass| klass === value }
@@ -460,6 +556,7 @@ module Google
460
556
  config_attr :metadata, nil, ::Hash, nil
461
557
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
462
558
  config_attr :quota_project, nil, ::String, nil
559
+ config_attr :universe_domain, nil, ::String, nil
463
560
 
464
561
  # @private
465
562
  def initialize parent_config = nil
@@ -542,12 +639,15 @@ module Google
542
639
  # Service stub contains baseline method implementations
543
640
  # including transcoding, making the REST call, and deserialing the response.
544
641
  class OperationsServiceStub
545
- def initialize endpoint:, credentials:
642
+ def initialize endpoint:, endpoint_template:, universe_domain:, credentials:
546
643
  # These require statements are intentionally placed here to initialize
547
644
  # the REST modules only when it's required.
548
645
  require "gapic/rest"
549
646
 
550
- @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint, credentials: credentials
647
+ @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint,
648
+ endpoint_template: endpoint_template,
649
+ universe_domain: universe_domain,
650
+ credentials: credentials
551
651
  end
552
652
 
553
653
  ##
@@ -30,16 +30,28 @@ module Google
30
30
  # including transcoding, making the REST call, and deserialing the response.
31
31
  #
32
32
  class ServiceStub
33
- def initialize endpoint:, credentials:
33
+ def initialize endpoint:, endpoint_template:, universe_domain:, credentials:
34
34
  # These require statements are intentionally placed here to initialize
35
35
  # the REST modules only when it's required.
36
36
  require "gapic/rest"
37
37
 
38
- @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint, credentials: credentials,
38
+ @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint,
39
+ endpoint_template: endpoint_template,
40
+ universe_domain: universe_domain,
41
+ credentials: credentials,
39
42
  numeric_enums: true,
40
43
  raise_faraday_errors: false
41
44
  end
42
45
 
46
+ ##
47
+ # The effective universe domain
48
+ #
49
+ # @return [String]
50
+ #
51
+ def universe_domain
52
+ @client_stub.universe_domain
53
+ end
54
+
43
55
  ##
44
56
  # Baseline implementation for the get_schema REST call
45
57
  #
@@ -31,6 +31,9 @@ module Google
31
31
  # Service for search.
32
32
  #
33
33
  class Client
34
+ # @private
35
+ DEFAULT_ENDPOINT_TEMPLATE = "discoveryengine.$UNIVERSE_DOMAIN$"
36
+
34
37
  include Paths
35
38
 
36
39
  # @private
@@ -96,6 +99,15 @@ module Google
96
99
  @config
97
100
  end
98
101
 
102
+ ##
103
+ # The effective universe domain
104
+ #
105
+ # @return [String]
106
+ #
107
+ def universe_domain
108
+ @search_service_stub.universe_domain
109
+ end
110
+
99
111
  ##
100
112
  # Create a new SearchService client object.
101
113
  #
@@ -129,8 +141,9 @@ module Google
129
141
  credentials = @config.credentials
130
142
  # Use self-signed JWT if the endpoint is unchanged from default,
131
143
  # but only if the default endpoint does not have a region prefix.
132
- enable_self_signed_jwt = @config.endpoint == Configuration::DEFAULT_ENDPOINT &&
133
- !@config.endpoint.split(".").first.include?("-")
144
+ enable_self_signed_jwt = @config.endpoint.nil? ||
145
+ (@config.endpoint == Configuration::DEFAULT_ENDPOINT &&
146
+ !@config.endpoint.split(".").first.include?("-"))
134
147
  credentials ||= Credentials.default scope: @config.scope,
135
148
  enable_self_signed_jwt: enable_self_signed_jwt
136
149
  if credentials.is_a?(::String) || credentials.is_a?(::Hash)
@@ -143,14 +156,18 @@ module Google
143
156
  config.credentials = credentials
144
157
  config.quota_project = @quota_project_id
145
158
  config.endpoint = @config.endpoint
159
+ config.universe_domain = @config.universe_domain
146
160
  end
147
161
 
148
162
  @search_service_stub = ::Gapic::ServiceStub.new(
149
163
  ::Google::Cloud::DiscoveryEngine::V1beta::SearchService::Stub,
150
- credentials: credentials,
151
- endpoint: @config.endpoint,
164
+ credentials: credentials,
165
+ endpoint: @config.endpoint,
166
+ endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
167
+ universe_domain: @config.universe_domain,
152
168
  channel_args: @config.channel_args,
153
- interceptors: @config.interceptors
169
+ interceptors: @config.interceptors,
170
+ channel_pool_config: @config.channel_pool
154
171
  )
155
172
  end
156
173
 
@@ -428,9 +445,9 @@ module Google
428
445
  # end
429
446
  #
430
447
  # @!attribute [rw] endpoint
431
- # The hostname or hostname:port of the service endpoint.
432
- # Defaults to `"discoveryengine.googleapis.com"`.
433
- # @return [::String]
448
+ # A custom service endpoint, as a hostname or hostname:port. The default is
449
+ # nil, indicating to use the default endpoint in the current universe domain.
450
+ # @return [::String,nil]
434
451
  # @!attribute [rw] credentials
435
452
  # Credentials to send with calls. You may provide any of the following types:
436
453
  # * (`String`) The path to a service account key file in JSON format
@@ -476,13 +493,20 @@ module Google
476
493
  # @!attribute [rw] quota_project
477
494
  # A separate project against which to charge quota.
478
495
  # @return [::String]
496
+ # @!attribute [rw] universe_domain
497
+ # The universe domain within which to make requests. This determines the
498
+ # default endpoint URL. The default value of nil uses the environment
499
+ # universe (usually the default "googleapis.com" universe).
500
+ # @return [::String,nil]
479
501
  #
480
502
  class Configuration
481
503
  extend ::Gapic::Config
482
504
 
505
+ # @private
506
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
483
507
  DEFAULT_ENDPOINT = "discoveryengine.googleapis.com"
484
508
 
485
- config_attr :endpoint, DEFAULT_ENDPOINT, ::String
509
+ config_attr :endpoint, nil, ::String, nil
486
510
  config_attr :credentials, nil do |value|
487
511
  allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
488
512
  allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
@@ -497,6 +521,7 @@ module Google
497
521
  config_attr :metadata, nil, ::Hash, nil
498
522
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
499
523
  config_attr :quota_project, nil, ::String, nil
524
+ config_attr :universe_domain, nil, ::String, nil
500
525
 
501
526
  # @private
502
527
  def initialize parent_config = nil
@@ -517,6 +542,14 @@ module Google
517
542
  end
518
543
  end
519
544
 
545
+ ##
546
+ # Configuration for the channel pool
547
+ # @return [::Gapic::ServiceStub::ChannelPool::Configuration]
548
+ #
549
+ def channel_pool
550
+ @channel_pool ||= ::Gapic::ServiceStub::ChannelPool::Configuration.new
551
+ end
552
+
520
553
  ##
521
554
  # Configuration RPC class for the SearchService API.
522
555
  #
@@ -33,6 +33,9 @@ module Google
33
33
  # Service for search.
34
34
  #
35
35
  class Client
36
+ # @private
37
+ DEFAULT_ENDPOINT_TEMPLATE = "discoveryengine.$UNIVERSE_DOMAIN$"
38
+
36
39
  include Paths
37
40
 
38
41
  # @private
@@ -98,6 +101,15 @@ module Google
98
101
  @config
99
102
  end
100
103
 
104
+ ##
105
+ # The effective universe domain
106
+ #
107
+ # @return [String]
108
+ #
109
+ def universe_domain
110
+ @search_service_stub.universe_domain
111
+ end
112
+
101
113
  ##
102
114
  # Create a new SearchService REST client object.
103
115
  #
@@ -125,8 +137,9 @@ module Google
125
137
  credentials = @config.credentials
126
138
  # Use self-signed JWT if the endpoint is unchanged from default,
127
139
  # but only if the default endpoint does not have a region prefix.
128
- enable_self_signed_jwt = @config.endpoint == Configuration::DEFAULT_ENDPOINT &&
129
- !@config.endpoint.split(".").first.include?("-")
140
+ enable_self_signed_jwt = @config.endpoint.nil? ||
141
+ (@config.endpoint == Configuration::DEFAULT_ENDPOINT &&
142
+ !@config.endpoint.split(".").first.include?("-"))
130
143
  credentials ||= Credentials.default scope: @config.scope,
131
144
  enable_self_signed_jwt: enable_self_signed_jwt
132
145
  if credentials.is_a?(::String) || credentials.is_a?(::Hash)
@@ -140,9 +153,15 @@ module Google
140
153
  config.credentials = credentials
141
154
  config.quota_project = @quota_project_id
142
155
  config.endpoint = @config.endpoint
156
+ config.universe_domain = @config.universe_domain
143
157
  end
144
158
 
145
- @search_service_stub = ::Google::Cloud::DiscoveryEngine::V1beta::SearchService::Rest::ServiceStub.new endpoint: @config.endpoint, credentials: credentials
159
+ @search_service_stub = ::Google::Cloud::DiscoveryEngine::V1beta::SearchService::Rest::ServiceStub.new(
160
+ endpoint: @config.endpoint,
161
+ endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
162
+ universe_domain: @config.universe_domain,
163
+ credentials: credentials
164
+ )
146
165
  end
147
166
 
148
167
  ##
@@ -326,6 +345,26 @@ module Google
326
345
  # @return [::Google::Cloud::DiscoveryEngine::V1beta::SearchResponse]
327
346
  #
328
347
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
348
+ #
349
+ # @example Basic example
350
+ # require "google/cloud/discovery_engine/v1beta"
351
+ #
352
+ # # Create a client object. The client can be reused for multiple calls.
353
+ # client = Google::Cloud::DiscoveryEngine::V1beta::SearchService::Rest::Client.new
354
+ #
355
+ # # Create a request. To set request fields, pass in keyword arguments.
356
+ # request = Google::Cloud::DiscoveryEngine::V1beta::SearchRequest.new
357
+ #
358
+ # # Call the search method.
359
+ # result = client.search request
360
+ #
361
+ # # The returned object is of type Gapic::PagedEnumerable. You can iterate
362
+ # # over elements, and API calls will be issued to fetch pages as needed.
363
+ # result.each do |item|
364
+ # # Each element is of type ::Google::Cloud::DiscoveryEngine::V1beta::SearchResponse::SearchResult.
365
+ # p item
366
+ # end
367
+ #
329
368
  def search request, options = nil
330
369
  raise ::ArgumentError, "request must be provided" if request.nil?
331
370
 
@@ -391,9 +430,9 @@ module Google
391
430
  # end
392
431
  #
393
432
  # @!attribute [rw] endpoint
394
- # The hostname or hostname:port of the service endpoint.
395
- # Defaults to `"discoveryengine.googleapis.com"`.
396
- # @return [::String]
433
+ # A custom service endpoint, as a hostname or hostname:port. The default is
434
+ # nil, indicating to use the default endpoint in the current universe domain.
435
+ # @return [::String,nil]
397
436
  # @!attribute [rw] credentials
398
437
  # Credentials to send with calls. You may provide any of the following types:
399
438
  # * (`String`) The path to a service account key file in JSON format
@@ -430,13 +469,20 @@ module Google
430
469
  # @!attribute [rw] quota_project
431
470
  # A separate project against which to charge quota.
432
471
  # @return [::String]
472
+ # @!attribute [rw] universe_domain
473
+ # The universe domain within which to make requests. This determines the
474
+ # default endpoint URL. The default value of nil uses the environment
475
+ # universe (usually the default "googleapis.com" universe).
476
+ # @return [::String,nil]
433
477
  #
434
478
  class Configuration
435
479
  extend ::Gapic::Config
436
480
 
481
+ # @private
482
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
437
483
  DEFAULT_ENDPOINT = "discoveryengine.googleapis.com"
438
484
 
439
- config_attr :endpoint, DEFAULT_ENDPOINT, ::String
485
+ config_attr :endpoint, nil, ::String, nil
440
486
  config_attr :credentials, nil do |value|
441
487
  allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
442
488
  allowed.any? { |klass| klass === value }
@@ -448,6 +494,7 @@ module Google
448
494
  config_attr :metadata, nil, ::Hash, nil
449
495
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
450
496
  config_attr :quota_project, nil, ::String, nil
497
+ config_attr :universe_domain, nil, ::String, nil
451
498
 
452
499
  # @private
453
500
  def initialize parent_config = nil
@@ -30,16 +30,28 @@ module Google
30
30
  # including transcoding, making the REST call, and deserialing the response.
31
31
  #
32
32
  class ServiceStub
33
- def initialize endpoint:, credentials:
33
+ def initialize endpoint:, endpoint_template:, universe_domain:, credentials:
34
34
  # These require statements are intentionally placed here to initialize
35
35
  # the REST modules only when it's required.
36
36
  require "gapic/rest"
37
37
 
38
- @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint, credentials: credentials,
38
+ @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint,
39
+ endpoint_template: endpoint_template,
40
+ universe_domain: universe_domain,
41
+ credentials: credentials,
39
42
  numeric_enums: true,
40
43
  raise_faraday_errors: false
41
44
  end
42
45
 
46
+ ##
47
+ # The effective universe domain
48
+ #
49
+ # @return [String]
50
+ #
51
+ def universe_domain
52
+ @client_stub.universe_domain
53
+ end
54
+
43
55
  ##
44
56
  # Baseline implementation for the search REST call
45
57
  #
@@ -31,6 +31,9 @@ module Google
31
31
  # Service for ingesting end user actions on a website to Discovery Engine API.
32
32
  #
33
33
  class Client
34
+ # @private
35
+ DEFAULT_ENDPOINT_TEMPLATE = "discoveryengine.$UNIVERSE_DOMAIN$"
36
+
34
37
  include Paths
35
38
 
36
39
  # @private
@@ -101,6 +104,15 @@ module Google
101
104
  @config
102
105
  end
103
106
 
107
+ ##
108
+ # The effective universe domain
109
+ #
110
+ # @return [String]
111
+ #
112
+ def universe_domain
113
+ @user_event_service_stub.universe_domain
114
+ end
115
+
104
116
  ##
105
117
  # Create a new UserEventService client object.
106
118
  #
@@ -134,8 +146,9 @@ module Google
134
146
  credentials = @config.credentials
135
147
  # Use self-signed JWT if the endpoint is unchanged from default,
136
148
  # but only if the default endpoint does not have a region prefix.
137
- enable_self_signed_jwt = @config.endpoint == Configuration::DEFAULT_ENDPOINT &&
138
- !@config.endpoint.split(".").first.include?("-")
149
+ enable_self_signed_jwt = @config.endpoint.nil? ||
150
+ (@config.endpoint == Configuration::DEFAULT_ENDPOINT &&
151
+ !@config.endpoint.split(".").first.include?("-"))
139
152
  credentials ||= Credentials.default scope: @config.scope,
140
153
  enable_self_signed_jwt: enable_self_signed_jwt
141
154
  if credentials.is_a?(::String) || credentials.is_a?(::Hash)
@@ -148,20 +161,25 @@ module Google
148
161
  config.credentials = credentials
149
162
  config.quota_project = @quota_project_id
150
163
  config.endpoint = @config.endpoint
164
+ config.universe_domain = @config.universe_domain
151
165
  end
152
166
 
153
167
  @location_client = Google::Cloud::Location::Locations::Client.new do |config|
154
168
  config.credentials = credentials
155
169
  config.quota_project = @quota_project_id
156
170
  config.endpoint = @config.endpoint
171
+ config.universe_domain = @config.universe_domain
157
172
  end
158
173
 
159
174
  @user_event_service_stub = ::Gapic::ServiceStub.new(
160
175
  ::Google::Cloud::DiscoveryEngine::V1beta::UserEventService::Stub,
161
- credentials: credentials,
162
- endpoint: @config.endpoint,
176
+ credentials: credentials,
177
+ endpoint: @config.endpoint,
178
+ endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
179
+ universe_domain: @config.universe_domain,
163
180
  channel_args: @config.channel_args,
164
- interceptors: @config.interceptors
181
+ interceptors: @config.interceptors,
182
+ channel_pool_config: @config.channel_pool
165
183
  )
166
184
  end
167
185
 
@@ -510,9 +528,9 @@ module Google
510
528
  # end
511
529
  #
512
530
  # @!attribute [rw] endpoint
513
- # The hostname or hostname:port of the service endpoint.
514
- # Defaults to `"discoveryengine.googleapis.com"`.
515
- # @return [::String]
531
+ # A custom service endpoint, as a hostname or hostname:port. The default is
532
+ # nil, indicating to use the default endpoint in the current universe domain.
533
+ # @return [::String,nil]
516
534
  # @!attribute [rw] credentials
517
535
  # Credentials to send with calls. You may provide any of the following types:
518
536
  # * (`String`) The path to a service account key file in JSON format
@@ -558,13 +576,20 @@ module Google
558
576
  # @!attribute [rw] quota_project
559
577
  # A separate project against which to charge quota.
560
578
  # @return [::String]
579
+ # @!attribute [rw] universe_domain
580
+ # The universe domain within which to make requests. This determines the
581
+ # default endpoint URL. The default value of nil uses the environment
582
+ # universe (usually the default "googleapis.com" universe).
583
+ # @return [::String,nil]
561
584
  #
562
585
  class Configuration
563
586
  extend ::Gapic::Config
564
587
 
588
+ # @private
589
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
565
590
  DEFAULT_ENDPOINT = "discoveryengine.googleapis.com"
566
591
 
567
- config_attr :endpoint, DEFAULT_ENDPOINT, ::String
592
+ config_attr :endpoint, nil, ::String, nil
568
593
  config_attr :credentials, nil do |value|
569
594
  allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
570
595
  allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
@@ -579,6 +604,7 @@ module Google
579
604
  config_attr :metadata, nil, ::Hash, nil
580
605
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
581
606
  config_attr :quota_project, nil, ::String, nil
607
+ config_attr :universe_domain, nil, ::String, nil
582
608
 
583
609
  # @private
584
610
  def initialize parent_config = nil
@@ -599,6 +625,14 @@ module Google
599
625
  end
600
626
  end
601
627
 
628
+ ##
629
+ # Configuration for the channel pool
630
+ # @return [::Gapic::ServiceStub::ChannelPool::Configuration]
631
+ #
632
+ def channel_pool
633
+ @channel_pool ||= ::Gapic::ServiceStub::ChannelPool::Configuration.new
634
+ end
635
+
602
636
  ##
603
637
  # Configuration RPC class for the UserEventService API.
604
638
  #