google-cloud-discovery_engine-v1 0.2.0 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (30) hide show
  1. checksums.yaml +4 -4
  2. data/AUTHENTICATION.md +72 -99
  3. data/lib/google/cloud/discovery_engine/v1/completion_service/client.rb +42 -9
  4. data/lib/google/cloud/discovery_engine/v1/completion_service/rest/client.rb +50 -7
  5. data/lib/google/cloud/discovery_engine/v1/completion_service/rest/service_stub.rb +14 -2
  6. data/lib/google/cloud/discovery_engine/v1/conversational_search_service/client.rb +42 -9
  7. data/lib/google/cloud/discovery_engine/v1/conversational_search_service/rest/client.rb +134 -7
  8. data/lib/google/cloud/discovery_engine/v1/conversational_search_service/rest/service_stub.rb +14 -2
  9. data/lib/google/cloud/discovery_engine/v1/document_service/client.rb +43 -9
  10. data/lib/google/cloud/discovery_engine/v1/document_service/operations.rb +38 -7
  11. data/lib/google/cloud/discovery_engine/v1/document_service/rest/client.rb +165 -7
  12. data/lib/google/cloud/discovery_engine/v1/document_service/rest/operations.rb +108 -8
  13. data/lib/google/cloud/discovery_engine/v1/document_service/rest/service_stub.rb +14 -2
  14. data/lib/google/cloud/discovery_engine/v1/schema_service/client.rb +43 -9
  15. data/lib/google/cloud/discovery_engine/v1/schema_service/operations.rb +38 -7
  16. data/lib/google/cloud/discovery_engine/v1/schema_service/rest/client.rb +140 -7
  17. data/lib/google/cloud/discovery_engine/v1/schema_service/rest/operations.rb +108 -8
  18. data/lib/google/cloud/discovery_engine/v1/schema_service/rest/service_stub.rb +14 -2
  19. data/lib/google/cloud/discovery_engine/v1/search_service/client.rb +42 -9
  20. data/lib/google/cloud/discovery_engine/v1/search_service/rest/client.rb +54 -7
  21. data/lib/google/cloud/discovery_engine/v1/search_service/rest/service_stub.rb +14 -2
  22. data/lib/google/cloud/discovery_engine/v1/user_event_service/client.rb +43 -9
  23. data/lib/google/cloud/discovery_engine/v1/user_event_service/operations.rb +38 -7
  24. data/lib/google/cloud/discovery_engine/v1/user_event_service/rest/client.rb +90 -7
  25. data/lib/google/cloud/discovery_engine/v1/user_event_service/rest/operations.rb +108 -8
  26. data/lib/google/cloud/discovery_engine/v1/user_event_service/rest/service_stub.rb +14 -2
  27. data/lib/google/cloud/discovery_engine/v1/version.rb +1 -1
  28. data/proto_docs/google/api/client.rb +14 -0
  29. data/proto_docs/google/cloud/discoveryengine/v1/search_service.rb +2 -0
  30. metadata +7 -7
@@ -34,6 +34,9 @@ module Google
34
34
  # information of the customer's website.
35
35
  #
36
36
  class Client
37
+ # @private
38
+ DEFAULT_ENDPOINT_TEMPLATE = "discoveryengine.$UNIVERSE_DOMAIN$"
39
+
37
40
  include Paths
38
41
 
39
42
  # @private
@@ -104,6 +107,15 @@ module Google
104
107
  @config
105
108
  end
106
109
 
110
+ ##
111
+ # The effective universe domain
112
+ #
113
+ # @return [String]
114
+ #
115
+ def universe_domain
116
+ @document_service_stub.universe_domain
117
+ end
118
+
107
119
  ##
108
120
  # Create a new DocumentService REST client object.
109
121
  #
@@ -131,8 +143,9 @@ module Google
131
143
  credentials = @config.credentials
132
144
  # Use self-signed JWT if the endpoint is unchanged from default,
133
145
  # but only if the default endpoint does not have a region prefix.
134
- enable_self_signed_jwt = @config.endpoint == Configuration::DEFAULT_ENDPOINT &&
135
- !@config.endpoint.split(".").first.include?("-")
146
+ enable_self_signed_jwt = @config.endpoint.nil? ||
147
+ (@config.endpoint == Configuration::DEFAULT_ENDPOINT &&
148
+ !@config.endpoint.split(".").first.include?("-"))
136
149
  credentials ||= Credentials.default scope: @config.scope,
137
150
  enable_self_signed_jwt: enable_self_signed_jwt
138
151
  if credentials.is_a?(::String) || credentials.is_a?(::Hash)
@@ -146,15 +159,22 @@ module Google
146
159
  config.credentials = credentials
147
160
  config.quota_project = @quota_project_id
148
161
  config.endpoint = @config.endpoint
162
+ config.universe_domain = @config.universe_domain
149
163
  end
150
164
 
151
165
  @location_client = Google::Cloud::Location::Locations::Rest::Client.new do |config|
152
166
  config.credentials = credentials
153
167
  config.quota_project = @quota_project_id
154
168
  config.endpoint = @config.endpoint
169
+ config.universe_domain = @config.universe_domain
155
170
  end
156
171
 
157
- @document_service_stub = ::Google::Cloud::DiscoveryEngine::V1::DocumentService::Rest::ServiceStub.new endpoint: @config.endpoint, credentials: credentials
172
+ @document_service_stub = ::Google::Cloud::DiscoveryEngine::V1::DocumentService::Rest::ServiceStub.new(
173
+ endpoint: @config.endpoint,
174
+ endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
175
+ universe_domain: @config.universe_domain,
176
+ credentials: credentials
177
+ )
158
178
  end
159
179
 
160
180
  ##
@@ -209,6 +229,22 @@ module Google
209
229
  # @return [::Google::Cloud::DiscoveryEngine::V1::Document]
210
230
  #
211
231
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
232
+ #
233
+ # @example Basic example
234
+ # require "google/cloud/discovery_engine/v1"
235
+ #
236
+ # # Create a client object. The client can be reused for multiple calls.
237
+ # client = Google::Cloud::DiscoveryEngine::V1::DocumentService::Rest::Client.new
238
+ #
239
+ # # Create a request. To set request fields, pass in keyword arguments.
240
+ # request = Google::Cloud::DiscoveryEngine::V1::GetDocumentRequest.new
241
+ #
242
+ # # Call the get_document method.
243
+ # result = client.get_document request
244
+ #
245
+ # # The returned object is of type Google::Cloud::DiscoveryEngine::V1::Document.
246
+ # p result
247
+ #
212
248
  def get_document request, options = nil
213
249
  raise ::ArgumentError, "request must be provided" if request.nil?
214
250
 
@@ -296,6 +332,26 @@ module Google
296
332
  # @return [::Gapic::Rest::PagedEnumerable<::Google::Cloud::DiscoveryEngine::V1::Document>]
297
333
  #
298
334
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
335
+ #
336
+ # @example Basic example
337
+ # require "google/cloud/discovery_engine/v1"
338
+ #
339
+ # # Create a client object. The client can be reused for multiple calls.
340
+ # client = Google::Cloud::DiscoveryEngine::V1::DocumentService::Rest::Client.new
341
+ #
342
+ # # Create a request. To set request fields, pass in keyword arguments.
343
+ # request = Google::Cloud::DiscoveryEngine::V1::ListDocumentsRequest.new
344
+ #
345
+ # # Call the list_documents method.
346
+ # result = client.list_documents request
347
+ #
348
+ # # The returned object is of type Gapic::PagedEnumerable. You can iterate
349
+ # # over elements, and API calls will be issued to fetch pages as needed.
350
+ # result.each do |item|
351
+ # # Each element is of type ::Google::Cloud::DiscoveryEngine::V1::Document.
352
+ # p item
353
+ # end
354
+ #
299
355
  def list_documents request, options = nil
300
356
  raise ::ArgumentError, "request must be provided" if request.nil?
301
357
 
@@ -381,6 +437,22 @@ module Google
381
437
  # @return [::Google::Cloud::DiscoveryEngine::V1::Document]
382
438
  #
383
439
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
440
+ #
441
+ # @example Basic example
442
+ # require "google/cloud/discovery_engine/v1"
443
+ #
444
+ # # Create a client object. The client can be reused for multiple calls.
445
+ # client = Google::Cloud::DiscoveryEngine::V1::DocumentService::Rest::Client.new
446
+ #
447
+ # # Create a request. To set request fields, pass in keyword arguments.
448
+ # request = Google::Cloud::DiscoveryEngine::V1::CreateDocumentRequest.new
449
+ #
450
+ # # Call the create_document method.
451
+ # result = client.create_document request
452
+ #
453
+ # # The returned object is of type Google::Cloud::DiscoveryEngine::V1::Document.
454
+ # p result
455
+ #
384
456
  def create_document request, options = nil
385
457
  raise ::ArgumentError, "request must be provided" if request.nil?
386
458
 
@@ -456,6 +528,22 @@ module Google
456
528
  # @return [::Google::Cloud::DiscoveryEngine::V1::Document]
457
529
  #
458
530
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
531
+ #
532
+ # @example Basic example
533
+ # require "google/cloud/discovery_engine/v1"
534
+ #
535
+ # # Create a client object. The client can be reused for multiple calls.
536
+ # client = Google::Cloud::DiscoveryEngine::V1::DocumentService::Rest::Client.new
537
+ #
538
+ # # Create a request. To set request fields, pass in keyword arguments.
539
+ # request = Google::Cloud::DiscoveryEngine::V1::UpdateDocumentRequest.new
540
+ #
541
+ # # Call the update_document method.
542
+ # result = client.update_document request
543
+ #
544
+ # # The returned object is of type Google::Cloud::DiscoveryEngine::V1::Document.
545
+ # p result
546
+ #
459
547
  def update_document request, options = nil
460
548
  raise ::ArgumentError, "request must be provided" if request.nil?
461
549
 
@@ -527,6 +615,22 @@ module Google
527
615
  # @return [::Google::Protobuf::Empty]
528
616
  #
529
617
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
618
+ #
619
+ # @example Basic example
620
+ # require "google/cloud/discovery_engine/v1"
621
+ #
622
+ # # Create a client object. The client can be reused for multiple calls.
623
+ # client = Google::Cloud::DiscoveryEngine::V1::DocumentService::Rest::Client.new
624
+ #
625
+ # # Create a request. To set request fields, pass in keyword arguments.
626
+ # request = Google::Cloud::DiscoveryEngine::V1::DeleteDocumentRequest.new
627
+ #
628
+ # # Call the delete_document method.
629
+ # result = client.delete_document request
630
+ #
631
+ # # The returned object is of type Google::Protobuf::Empty.
632
+ # p result
633
+ #
530
634
  def delete_document request, options = nil
531
635
  raise ::ArgumentError, "request must be provided" if request.nil?
532
636
 
@@ -658,6 +762,29 @@ module Google
658
762
  # @return [::Gapic::Operation]
659
763
  #
660
764
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
765
+ #
766
+ # @example Basic example
767
+ # require "google/cloud/discovery_engine/v1"
768
+ #
769
+ # # Create a client object. The client can be reused for multiple calls.
770
+ # client = Google::Cloud::DiscoveryEngine::V1::DocumentService::Rest::Client.new
771
+ #
772
+ # # Create a request. To set request fields, pass in keyword arguments.
773
+ # request = Google::Cloud::DiscoveryEngine::V1::ImportDocumentsRequest.new
774
+ #
775
+ # # Call the import_documents method.
776
+ # result = client.import_documents request
777
+ #
778
+ # # The returned object is of type Gapic::Operation. You can use it to
779
+ # # check the status of an operation, cancel it, or wait for results.
780
+ # # Here is how to wait for a response.
781
+ # result.wait_until_done! timeout: 60
782
+ # if result.response?
783
+ # p result.response
784
+ # else
785
+ # puts "No response received."
786
+ # end
787
+ #
661
788
  def import_documents request, options = nil
662
789
  raise ::ArgumentError, "request must be provided" if request.nil?
663
790
 
@@ -744,6 +871,29 @@ module Google
744
871
  # @return [::Gapic::Operation]
745
872
  #
746
873
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
874
+ #
875
+ # @example Basic example
876
+ # require "google/cloud/discovery_engine/v1"
877
+ #
878
+ # # Create a client object. The client can be reused for multiple calls.
879
+ # client = Google::Cloud::DiscoveryEngine::V1::DocumentService::Rest::Client.new
880
+ #
881
+ # # Create a request. To set request fields, pass in keyword arguments.
882
+ # request = Google::Cloud::DiscoveryEngine::V1::PurgeDocumentsRequest.new
883
+ #
884
+ # # Call the purge_documents method.
885
+ # result = client.purge_documents request
886
+ #
887
+ # # The returned object is of type Gapic::Operation. You can use it to
888
+ # # check the status of an operation, cancel it, or wait for results.
889
+ # # Here is how to wait for a response.
890
+ # result.wait_until_done! timeout: 60
891
+ # if result.response?
892
+ # p result.response
893
+ # else
894
+ # puts "No response received."
895
+ # end
896
+ #
747
897
  def purge_documents request, options = nil
748
898
  raise ::ArgumentError, "request must be provided" if request.nil?
749
899
 
@@ -810,9 +960,9 @@ module Google
810
960
  # end
811
961
  #
812
962
  # @!attribute [rw] endpoint
813
- # The hostname or hostname:port of the service endpoint.
814
- # Defaults to `"discoveryengine.googleapis.com"`.
815
- # @return [::String]
963
+ # A custom service endpoint, as a hostname or hostname:port. The default is
964
+ # nil, indicating to use the default endpoint in the current universe domain.
965
+ # @return [::String,nil]
816
966
  # @!attribute [rw] credentials
817
967
  # Credentials to send with calls. You may provide any of the following types:
818
968
  # * (`String`) The path to a service account key file in JSON format
@@ -849,13 +999,20 @@ module Google
849
999
  # @!attribute [rw] quota_project
850
1000
  # A separate project against which to charge quota.
851
1001
  # @return [::String]
1002
+ # @!attribute [rw] universe_domain
1003
+ # The universe domain within which to make requests. This determines the
1004
+ # default endpoint URL. The default value of nil uses the environment
1005
+ # universe (usually the default "googleapis.com" universe).
1006
+ # @return [::String,nil]
852
1007
  #
853
1008
  class Configuration
854
1009
  extend ::Gapic::Config
855
1010
 
1011
+ # @private
1012
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
856
1013
  DEFAULT_ENDPOINT = "discoveryengine.googleapis.com"
857
1014
 
858
- config_attr :endpoint, DEFAULT_ENDPOINT, ::String
1015
+ config_attr :endpoint, nil, ::String, nil
859
1016
  config_attr :credentials, nil do |value|
860
1017
  allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
861
1018
  allowed.any? { |klass| klass === value }
@@ -867,6 +1024,7 @@ module Google
867
1024
  config_attr :metadata, nil, ::Hash, nil
868
1025
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
869
1026
  config_attr :quota_project, nil, ::String, nil
1027
+ config_attr :universe_domain, nil, ::String, nil
870
1028
 
871
1029
  # @private
872
1030
  def initialize parent_config = nil
@@ -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_document REST call
45
57
  #
@@ -31,6 +31,9 @@ module Google
31
31
  # Service for managing {::Google::Cloud::DiscoveryEngine::V1::Schema Schema}s.
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
+ @schema_service_stub.universe_domain
109
+ end
110
+
99
111
  ##
100
112
  # Create a new SchemaService 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,20 +156,25 @@ 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
  @location_client = Google::Cloud::Location::Locations::Client.new do |config|
149
163
  config.credentials = credentials
150
164
  config.quota_project = @quota_project_id
151
165
  config.endpoint = @config.endpoint
166
+ config.universe_domain = @config.universe_domain
152
167
  end
153
168
 
154
169
  @schema_service_stub = ::Gapic::ServiceStub.new(
155
170
  ::Google::Cloud::DiscoveryEngine::V1::SchemaService::Stub,
156
- credentials: credentials,
157
- endpoint: @config.endpoint,
171
+ credentials: credentials,
172
+ endpoint: @config.endpoint,
173
+ endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
174
+ universe_domain: @config.universe_domain,
158
175
  channel_args: @config.channel_args,
159
- interceptors: @config.interceptors
176
+ interceptors: @config.interceptors,
177
+ channel_pool_config: @config.channel_pool
160
178
  )
161
179
  end
162
180
 
@@ -695,9 +713,9 @@ module Google
695
713
  # end
696
714
  #
697
715
  # @!attribute [rw] endpoint
698
- # The hostname or hostname:port of the service endpoint.
699
- # Defaults to `"discoveryengine.googleapis.com"`.
700
- # @return [::String]
716
+ # A custom service endpoint, as a hostname or hostname:port. The default is
717
+ # nil, indicating to use the default endpoint in the current universe domain.
718
+ # @return [::String,nil]
701
719
  # @!attribute [rw] credentials
702
720
  # Credentials to send with calls. You may provide any of the following types:
703
721
  # * (`String`) The path to a service account key file in JSON format
@@ -743,13 +761,20 @@ module Google
743
761
  # @!attribute [rw] quota_project
744
762
  # A separate project against which to charge quota.
745
763
  # @return [::String]
764
+ # @!attribute [rw] universe_domain
765
+ # The universe domain within which to make requests. This determines the
766
+ # default endpoint URL. The default value of nil uses the environment
767
+ # universe (usually the default "googleapis.com" universe).
768
+ # @return [::String,nil]
746
769
  #
747
770
  class Configuration
748
771
  extend ::Gapic::Config
749
772
 
773
+ # @private
774
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
750
775
  DEFAULT_ENDPOINT = "discoveryengine.googleapis.com"
751
776
 
752
- config_attr :endpoint, DEFAULT_ENDPOINT, ::String
777
+ config_attr :endpoint, nil, ::String, nil
753
778
  config_attr :credentials, nil do |value|
754
779
  allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
755
780
  allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
@@ -764,6 +789,7 @@ module Google
764
789
  config_attr :metadata, nil, ::Hash, nil
765
790
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
766
791
  config_attr :quota_project, nil, ::String, nil
792
+ config_attr :universe_domain, nil, ::String, nil
767
793
 
768
794
  # @private
769
795
  def initialize parent_config = nil
@@ -784,6 +810,14 @@ module Google
784
810
  end
785
811
  end
786
812
 
813
+ ##
814
+ # Configuration for the channel pool
815
+ # @return [::Gapic::ServiceStub::ChannelPool::Configuration]
816
+ #
817
+ def channel_pool
818
+ @channel_pool ||= ::Gapic::ServiceStub::ChannelPool::Configuration.new
819
+ end
820
+
787
821
  ##
788
822
  # Configuration RPC class for the SchemaService API.
789
823
  #