google-cloud-discovery_engine-v1 0.3.0 → 0.4.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 (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 +32 -8
  4. data/lib/google/cloud/discovery_engine/v1/completion_service/rest/client.rb +34 -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 +32 -8
  7. data/lib/google/cloud/discovery_engine/v1/conversational_search_service/rest/client.rb +34 -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 +33 -8
  10. data/lib/google/cloud/discovery_engine/v1/document_service/operations.rb +28 -6
  11. data/lib/google/cloud/discovery_engine/v1/document_service/rest/client.rb +35 -7
  12. data/lib/google/cloud/discovery_engine/v1/document_service/rest/operations.rb +33 -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 +33 -8
  15. data/lib/google/cloud/discovery_engine/v1/schema_service/operations.rb +28 -6
  16. data/lib/google/cloud/discovery_engine/v1/schema_service/rest/client.rb +35 -7
  17. data/lib/google/cloud/discovery_engine/v1/schema_service/rest/operations.rb +33 -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 +32 -8
  20. data/lib/google/cloud/discovery_engine/v1/search_service/rest/client.rb +34 -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 +33 -8
  23. data/lib/google/cloud/discovery_engine/v1/user_event_service/operations.rb +28 -6
  24. data/lib/google/cloud/discovery_engine/v1/user_event_service/rest/client.rb +35 -7
  25. data/lib/google/cloud/discovery_engine/v1/user_event_service/rest/operations.rb +33 -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
@@ -26,6 +26,9 @@ module Google
26
26
  module SchemaService
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
  #
@@ -90,8 +102,10 @@ module Google
90
102
 
91
103
  @operations_stub = ::Gapic::ServiceStub.new(
92
104
  ::Google::Longrunning::Operations::Stub,
93
- credentials: credentials,
94
- endpoint: @config.endpoint,
105
+ credentials: credentials,
106
+ endpoint: @config.endpoint,
107
+ endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
108
+ universe_domain: @config.universe_domain,
95
109
  channel_args: @config.channel_args,
96
110
  interceptors: @config.interceptors,
97
111
  channel_pool_config: @config.channel_pool
@@ -613,9 +627,9 @@ module Google
613
627
  # end
614
628
  #
615
629
  # @!attribute [rw] endpoint
616
- # The hostname or hostname:port of the service endpoint.
617
- # Defaults to `"discoveryengine.googleapis.com"`.
618
- # @return [::String]
630
+ # A custom service endpoint, as a hostname or hostname:port. The default is
631
+ # nil, indicating to use the default endpoint in the current universe domain.
632
+ # @return [::String,nil]
619
633
  # @!attribute [rw] credentials
620
634
  # Credentials to send with calls. You may provide any of the following types:
621
635
  # * (`String`) The path to a service account key file in JSON format
@@ -661,13 +675,20 @@ module Google
661
675
  # @!attribute [rw] quota_project
662
676
  # A separate project against which to charge quota.
663
677
  # @return [::String]
678
+ # @!attribute [rw] universe_domain
679
+ # The universe domain within which to make requests. This determines the
680
+ # default endpoint URL. The default value of nil uses the environment
681
+ # universe (usually the default "googleapis.com" universe).
682
+ # @return [::String,nil]
664
683
  #
665
684
  class Configuration
666
685
  extend ::Gapic::Config
667
686
 
687
+ # @private
688
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
668
689
  DEFAULT_ENDPOINT = "discoveryengine.googleapis.com"
669
690
 
670
- config_attr :endpoint, DEFAULT_ENDPOINT, ::String
691
+ config_attr :endpoint, nil, ::String, nil
671
692
  config_attr :credentials, nil do |value|
672
693
  allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
673
694
  allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
@@ -682,6 +703,7 @@ module Google
682
703
  config_attr :metadata, nil, ::Hash, nil
683
704
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
684
705
  config_attr :quota_project, nil, ::String, nil
706
+ config_attr :universe_domain, nil, ::String, nil
685
707
 
686
708
  # @private
687
709
  def initialize parent_config = nil
@@ -33,6 +33,9 @@ module Google
33
33
  # Service for managing {::Google::Cloud::DiscoveryEngine::V1::Schema Schema}s.
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
+ @schema_service_stub.universe_domain
111
+ end
112
+
101
113
  ##
102
114
  # Create a new SchemaService 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,15 +153,22 @@ 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
159
  @location_client = Google::Cloud::Location::Locations::Rest::Client.new do |config|
146
160
  config.credentials = credentials
147
161
  config.quota_project = @quota_project_id
148
162
  config.endpoint = @config.endpoint
163
+ config.universe_domain = @config.universe_domain
149
164
  end
150
165
 
151
- @schema_service_stub = ::Google::Cloud::DiscoveryEngine::V1::SchemaService::Rest::ServiceStub.new endpoint: @config.endpoint, credentials: credentials
166
+ @schema_service_stub = ::Google::Cloud::DiscoveryEngine::V1::SchemaService::Rest::ServiceStub.new(
167
+ endpoint: @config.endpoint,
168
+ endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
169
+ universe_domain: @config.universe_domain,
170
+ credentials: credentials
171
+ )
152
172
  end
153
173
 
154
174
  ##
@@ -651,9 +671,9 @@ module Google
651
671
  # end
652
672
  #
653
673
  # @!attribute [rw] endpoint
654
- # The hostname or hostname:port of the service endpoint.
655
- # Defaults to `"discoveryengine.googleapis.com"`.
656
- # @return [::String]
674
+ # A custom service endpoint, as a hostname or hostname:port. The default is
675
+ # nil, indicating to use the default endpoint in the current universe domain.
676
+ # @return [::String,nil]
657
677
  # @!attribute [rw] credentials
658
678
  # Credentials to send with calls. You may provide any of the following types:
659
679
  # * (`String`) The path to a service account key file in JSON format
@@ -690,13 +710,20 @@ module Google
690
710
  # @!attribute [rw] quota_project
691
711
  # A separate project against which to charge quota.
692
712
  # @return [::String]
713
+ # @!attribute [rw] universe_domain
714
+ # The universe domain within which to make requests. This determines the
715
+ # default endpoint URL. The default value of nil uses the environment
716
+ # universe (usually the default "googleapis.com" universe).
717
+ # @return [::String,nil]
693
718
  #
694
719
  class Configuration
695
720
  extend ::Gapic::Config
696
721
 
722
+ # @private
723
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
697
724
  DEFAULT_ENDPOINT = "discoveryengine.googleapis.com"
698
725
 
699
- config_attr :endpoint, DEFAULT_ENDPOINT, ::String
726
+ config_attr :endpoint, nil, ::String, nil
700
727
  config_attr :credentials, nil do |value|
701
728
  allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
702
729
  allowed.any? { |klass| klass === value }
@@ -708,6 +735,7 @@ module Google
708
735
  config_attr :metadata, nil, ::Hash, nil
709
736
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
710
737
  config_attr :quota_project, nil, ::String, nil
738
+ config_attr :universe_domain, nil, ::String, nil
711
739
 
712
740
  # @private
713
741
  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
@@ -478,9 +492,9 @@ module Google
478
492
  # end
479
493
  #
480
494
  # @!attribute [rw] endpoint
481
- # The hostname or hostname:port of the service endpoint.
482
- # Defaults to `"discoveryengine.googleapis.com"`.
483
- # @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]
484
498
  # @!attribute [rw] credentials
485
499
  # Credentials to send with calls. You may provide any of the following types:
486
500
  # * (`String`) The path to a service account key file in JSON format
@@ -517,13 +531,20 @@ module Google
517
531
  # @!attribute [rw] quota_project
518
532
  # A separate project against which to charge quota.
519
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]
520
539
  #
521
540
  class Configuration
522
541
  extend ::Gapic::Config
523
542
 
543
+ # @private
544
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
524
545
  DEFAULT_ENDPOINT = "discoveryengine.googleapis.com"
525
546
 
526
- config_attr :endpoint, DEFAULT_ENDPOINT, ::String
547
+ config_attr :endpoint, nil, ::String, nil
527
548
  config_attr :credentials, nil do |value|
528
549
  allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
529
550
  allowed.any? { |klass| klass === value }
@@ -535,6 +556,7 @@ module Google
535
556
  config_attr :metadata, nil, ::Hash, nil
536
557
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
537
558
  config_attr :quota_project, nil, ::String, nil
559
+ config_attr :universe_domain, nil, ::String, nil
538
560
 
539
561
  # @private
540
562
  def initialize parent_config = nil
@@ -617,12 +639,15 @@ module Google
617
639
  # Service stub contains baseline method implementations
618
640
  # including transcoding, making the REST call, and deserialing the response.
619
641
  class OperationsServiceStub
620
- def initialize endpoint:, credentials:
642
+ def initialize endpoint:, endpoint_template:, universe_domain:, credentials:
621
643
  # These require statements are intentionally placed here to initialize
622
644
  # the REST modules only when it's required.
623
645
  require "gapic/rest"
624
646
 
625
- @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
626
651
  end
627
652
 
628
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,12 +156,15 @@ 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::V1::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
169
  interceptors: @config.interceptors,
154
170
  channel_pool_config: @config.channel_pool
@@ -400,9 +416,9 @@ module Google
400
416
  # end
401
417
  #
402
418
  # @!attribute [rw] endpoint
403
- # The hostname or hostname:port of the service endpoint.
404
- # Defaults to `"discoveryengine.googleapis.com"`.
405
- # @return [::String]
419
+ # A custom service endpoint, as a hostname or hostname:port. The default is
420
+ # nil, indicating to use the default endpoint in the current universe domain.
421
+ # @return [::String,nil]
406
422
  # @!attribute [rw] credentials
407
423
  # Credentials to send with calls. You may provide any of the following types:
408
424
  # * (`String`) The path to a service account key file in JSON format
@@ -448,13 +464,20 @@ module Google
448
464
  # @!attribute [rw] quota_project
449
465
  # A separate project against which to charge quota.
450
466
  # @return [::String]
467
+ # @!attribute [rw] universe_domain
468
+ # The universe domain within which to make requests. This determines the
469
+ # default endpoint URL. The default value of nil uses the environment
470
+ # universe (usually the default "googleapis.com" universe).
471
+ # @return [::String,nil]
451
472
  #
452
473
  class Configuration
453
474
  extend ::Gapic::Config
454
475
 
476
+ # @private
477
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
455
478
  DEFAULT_ENDPOINT = "discoveryengine.googleapis.com"
456
479
 
457
- config_attr :endpoint, DEFAULT_ENDPOINT, ::String
480
+ config_attr :endpoint, nil, ::String, nil
458
481
  config_attr :credentials, nil do |value|
459
482
  allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
460
483
  allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
@@ -469,6 +492,7 @@ module Google
469
492
  config_attr :metadata, nil, ::Hash, nil
470
493
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
471
494
  config_attr :quota_project, nil, ::String, nil
495
+ config_attr :universe_domain, nil, ::String, nil
472
496
 
473
497
  # @private
474
498
  def initialize parent_config = nil
@@ -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::V1::SearchService::Rest::ServiceStub.new endpoint: @config.endpoint, credentials: credentials
159
+ @search_service_stub = ::Google::Cloud::DiscoveryEngine::V1::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
  ##
@@ -382,9 +401,9 @@ module Google
382
401
  # end
383
402
  #
384
403
  # @!attribute [rw] endpoint
385
- # The hostname or hostname:port of the service endpoint.
386
- # Defaults to `"discoveryengine.googleapis.com"`.
387
- # @return [::String]
404
+ # A custom service endpoint, as a hostname or hostname:port. The default is
405
+ # nil, indicating to use the default endpoint in the current universe domain.
406
+ # @return [::String,nil]
388
407
  # @!attribute [rw] credentials
389
408
  # Credentials to send with calls. You may provide any of the following types:
390
409
  # * (`String`) The path to a service account key file in JSON format
@@ -421,13 +440,20 @@ module Google
421
440
  # @!attribute [rw] quota_project
422
441
  # A separate project against which to charge quota.
423
442
  # @return [::String]
443
+ # @!attribute [rw] universe_domain
444
+ # The universe domain within which to make requests. This determines the
445
+ # default endpoint URL. The default value of nil uses the environment
446
+ # universe (usually the default "googleapis.com" universe).
447
+ # @return [::String,nil]
424
448
  #
425
449
  class Configuration
426
450
  extend ::Gapic::Config
427
451
 
452
+ # @private
453
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
428
454
  DEFAULT_ENDPOINT = "discoveryengine.googleapis.com"
429
455
 
430
- config_attr :endpoint, DEFAULT_ENDPOINT, ::String
456
+ config_attr :endpoint, nil, ::String, nil
431
457
  config_attr :credentials, nil do |value|
432
458
  allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
433
459
  allowed.any? { |klass| klass === value }
@@ -439,6 +465,7 @@ module Google
439
465
  config_attr :metadata, nil, ::Hash, nil
440
466
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
441
467
  config_attr :quota_project, nil, ::String, nil
468
+ config_attr :universe_domain, nil, ::String, nil
442
469
 
443
470
  # @private
444
471
  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,18 +161,22 @@ 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::V1::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
181
  interceptors: @config.interceptors,
165
182
  channel_pool_config: @config.channel_pool
@@ -511,9 +528,9 @@ module Google
511
528
  # end
512
529
  #
513
530
  # @!attribute [rw] endpoint
514
- # The hostname or hostname:port of the service endpoint.
515
- # Defaults to `"discoveryengine.googleapis.com"`.
516
- # @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]
517
534
  # @!attribute [rw] credentials
518
535
  # Credentials to send with calls. You may provide any of the following types:
519
536
  # * (`String`) The path to a service account key file in JSON format
@@ -559,13 +576,20 @@ module Google
559
576
  # @!attribute [rw] quota_project
560
577
  # A separate project against which to charge quota.
561
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]
562
584
  #
563
585
  class Configuration
564
586
  extend ::Gapic::Config
565
587
 
588
+ # @private
589
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
566
590
  DEFAULT_ENDPOINT = "discoveryengine.googleapis.com"
567
591
 
568
- config_attr :endpoint, DEFAULT_ENDPOINT, ::String
592
+ config_attr :endpoint, nil, ::String, nil
569
593
  config_attr :credentials, nil do |value|
570
594
  allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
571
595
  allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
@@ -580,6 +604,7 @@ module Google
580
604
  config_attr :metadata, nil, ::Hash, nil
581
605
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
582
606
  config_attr :quota_project, nil, ::String, nil
607
+ config_attr :universe_domain, nil, ::String, nil
583
608
 
584
609
  # @private
585
610
  def initialize parent_config = nil