google-cloud-dialogflow-cx-v3 0.23.0 → 0.24.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (72) hide show
  1. checksums.yaml +4 -4
  2. data/AUTHENTICATION.md +72 -101
  3. data/lib/google/cloud/dialogflow/cx/v3/agents/client.rb +33 -8
  4. data/lib/google/cloud/dialogflow/cx/v3/agents/operations.rb +28 -6
  5. data/lib/google/cloud/dialogflow/cx/v3/agents/rest/client.rb +35 -7
  6. data/lib/google/cloud/dialogflow/cx/v3/agents/rest/operations.rb +33 -8
  7. data/lib/google/cloud/dialogflow/cx/v3/agents/rest/service_stub.rb +14 -2
  8. data/lib/google/cloud/dialogflow/cx/v3/changelogs/client.rb +32 -8
  9. data/lib/google/cloud/dialogflow/cx/v3/changelogs/rest/client.rb +34 -7
  10. data/lib/google/cloud/dialogflow/cx/v3/changelogs/rest/service_stub.rb +14 -2
  11. data/lib/google/cloud/dialogflow/cx/v3/deployments/client.rb +32 -8
  12. data/lib/google/cloud/dialogflow/cx/v3/deployments/rest/client.rb +34 -7
  13. data/lib/google/cloud/dialogflow/cx/v3/deployments/rest/service_stub.rb +14 -2
  14. data/lib/google/cloud/dialogflow/cx/v3/entity_types/client.rb +32 -8
  15. data/lib/google/cloud/dialogflow/cx/v3/entity_types/rest/client.rb +34 -7
  16. data/lib/google/cloud/dialogflow/cx/v3/entity_types/rest/service_stub.rb +14 -2
  17. data/lib/google/cloud/dialogflow/cx/v3/environments/client.rb +33 -8
  18. data/lib/google/cloud/dialogflow/cx/v3/environments/operations.rb +28 -6
  19. data/lib/google/cloud/dialogflow/cx/v3/environments/rest/client.rb +35 -7
  20. data/lib/google/cloud/dialogflow/cx/v3/environments/rest/operations.rb +33 -8
  21. data/lib/google/cloud/dialogflow/cx/v3/environments/rest/service_stub.rb +14 -2
  22. data/lib/google/cloud/dialogflow/cx/v3/experiments/client.rb +32 -8
  23. data/lib/google/cloud/dialogflow/cx/v3/experiments/rest/client.rb +34 -7
  24. data/lib/google/cloud/dialogflow/cx/v3/experiments/rest/service_stub.rb +14 -2
  25. data/lib/google/cloud/dialogflow/cx/v3/flows/client.rb +33 -8
  26. data/lib/google/cloud/dialogflow/cx/v3/flows/operations.rb +28 -6
  27. data/lib/google/cloud/dialogflow/cx/v3/flows/rest/client.rb +35 -7
  28. data/lib/google/cloud/dialogflow/cx/v3/flows/rest/operations.rb +33 -8
  29. data/lib/google/cloud/dialogflow/cx/v3/flows/rest/service_stub.rb +14 -2
  30. data/lib/google/cloud/dialogflow/cx/v3/generators/client.rb +32 -8
  31. data/lib/google/cloud/dialogflow/cx/v3/generators/rest/client.rb +34 -7
  32. data/lib/google/cloud/dialogflow/cx/v3/generators/rest/service_stub.rb +14 -2
  33. data/lib/google/cloud/dialogflow/cx/v3/intents/client.rb +33 -8
  34. data/lib/google/cloud/dialogflow/cx/v3/intents/operations.rb +28 -6
  35. data/lib/google/cloud/dialogflow/cx/v3/intents/rest/client.rb +35 -7
  36. data/lib/google/cloud/dialogflow/cx/v3/intents/rest/operations.rb +33 -8
  37. data/lib/google/cloud/dialogflow/cx/v3/intents/rest/service_stub.rb +14 -2
  38. data/lib/google/cloud/dialogflow/cx/v3/pages/client.rb +32 -8
  39. data/lib/google/cloud/dialogflow/cx/v3/pages/rest/client.rb +34 -7
  40. data/lib/google/cloud/dialogflow/cx/v3/pages/rest/service_stub.rb +14 -2
  41. data/lib/google/cloud/dialogflow/cx/v3/security_settings_service/client.rb +32 -8
  42. data/lib/google/cloud/dialogflow/cx/v3/security_settings_service/rest/client.rb +34 -7
  43. data/lib/google/cloud/dialogflow/cx/v3/security_settings_service/rest/service_stub.rb +14 -2
  44. data/lib/google/cloud/dialogflow/cx/v3/session_entity_types/client.rb +32 -8
  45. data/lib/google/cloud/dialogflow/cx/v3/session_entity_types/rest/client.rb +34 -7
  46. data/lib/google/cloud/dialogflow/cx/v3/session_entity_types/rest/service_stub.rb +14 -2
  47. data/lib/google/cloud/dialogflow/cx/v3/sessions/client.rb +32 -8
  48. data/lib/google/cloud/dialogflow/cx/v3/sessions/rest/client.rb +34 -7
  49. data/lib/google/cloud/dialogflow/cx/v3/sessions/rest/service_stub.rb +14 -2
  50. data/lib/google/cloud/dialogflow/cx/v3/test_cases/client.rb +33 -8
  51. data/lib/google/cloud/dialogflow/cx/v3/test_cases/operations.rb +28 -6
  52. data/lib/google/cloud/dialogflow/cx/v3/test_cases/rest/client.rb +35 -7
  53. data/lib/google/cloud/dialogflow/cx/v3/test_cases/rest/operations.rb +33 -8
  54. data/lib/google/cloud/dialogflow/cx/v3/test_cases/rest/service_stub.rb +14 -2
  55. data/lib/google/cloud/dialogflow/cx/v3/transition_route_groups/client.rb +32 -8
  56. data/lib/google/cloud/dialogflow/cx/v3/transition_route_groups/rest/client.rb +34 -7
  57. data/lib/google/cloud/dialogflow/cx/v3/transition_route_groups/rest/service_stub.rb +14 -2
  58. data/lib/google/cloud/dialogflow/cx/v3/version.rb +1 -1
  59. data/lib/google/cloud/dialogflow/cx/v3/versions/client.rb +33 -8
  60. data/lib/google/cloud/dialogflow/cx/v3/versions/operations.rb +28 -6
  61. data/lib/google/cloud/dialogflow/cx/v3/versions/rest/client.rb +35 -7
  62. data/lib/google/cloud/dialogflow/cx/v3/versions/rest/operations.rb +33 -8
  63. data/lib/google/cloud/dialogflow/cx/v3/versions/rest/service_stub.rb +14 -2
  64. data/lib/google/cloud/dialogflow/cx/v3/webhooks/client.rb +32 -8
  65. data/lib/google/cloud/dialogflow/cx/v3/webhooks/rest/client.rb +34 -7
  66. data/lib/google/cloud/dialogflow/cx/v3/webhooks/rest/service_stub.rb +14 -2
  67. data/proto_docs/google/api/client.rb +1 -0
  68. data/proto_docs/google/cloud/dialogflow/cx/v3/agent.rb +1 -0
  69. data/proto_docs/google/cloud/dialogflow/cx/v3/session.rb +2 -0
  70. data/proto_docs/google/cloud/dialogflow/cx/v3/validation_message.rb +1 -0
  71. data/proto_docs/google/cloud/dialogflow/cx/v3/webhook.rb +2 -0
  72. metadata +6 -6
@@ -34,6 +34,9 @@ module Google
34
34
  # Service for managing {::Google::Cloud::Dialogflow::CX::V3::Experiment Experiments}.
35
35
  #
36
36
  class Client
37
+ # @private
38
+ DEFAULT_ENDPOINT_TEMPLATE = "dialogflow.$UNIVERSE_DOMAIN$"
39
+
37
40
  include Paths
38
41
 
39
42
  # @private
@@ -99,6 +102,15 @@ module Google
99
102
  @config
100
103
  end
101
104
 
105
+ ##
106
+ # The effective universe domain
107
+ #
108
+ # @return [String]
109
+ #
110
+ def universe_domain
111
+ @experiments_stub.universe_domain
112
+ end
113
+
102
114
  ##
103
115
  # Create a new Experiments REST client object.
104
116
  #
@@ -126,8 +138,9 @@ module Google
126
138
  credentials = @config.credentials
127
139
  # Use self-signed JWT if the endpoint is unchanged from default,
128
140
  # but only if the default endpoint does not have a region prefix.
129
- enable_self_signed_jwt = @config.endpoint == Configuration::DEFAULT_ENDPOINT &&
130
- !@config.endpoint.split(".").first.include?("-")
141
+ enable_self_signed_jwt = @config.endpoint.nil? ||
142
+ (@config.endpoint == Configuration::DEFAULT_ENDPOINT &&
143
+ !@config.endpoint.split(".").first.include?("-"))
131
144
  credentials ||= Credentials.default scope: @config.scope,
132
145
  enable_self_signed_jwt: enable_self_signed_jwt
133
146
  if credentials.is_a?(::String) || credentials.is_a?(::Hash)
@@ -141,10 +154,16 @@ module Google
141
154
  config.credentials = credentials
142
155
  config.quota_project = @quota_project_id
143
156
  config.endpoint = @config.endpoint
157
+ config.universe_domain = @config.universe_domain
144
158
  config.bindings_override = @config.bindings_override
145
159
  end
146
160
 
147
- @experiments_stub = ::Google::Cloud::Dialogflow::CX::V3::Experiments::Rest::ServiceStub.new endpoint: @config.endpoint, credentials: credentials
161
+ @experiments_stub = ::Google::Cloud::Dialogflow::CX::V3::Experiments::Rest::ServiceStub.new(
162
+ endpoint: @config.endpoint,
163
+ endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
164
+ universe_domain: @config.universe_domain,
165
+ credentials: credentials
166
+ )
148
167
  end
149
168
 
150
169
  ##
@@ -770,9 +789,9 @@ module Google
770
789
  # end
771
790
  #
772
791
  # @!attribute [rw] endpoint
773
- # The hostname or hostname:port of the service endpoint.
774
- # Defaults to `"dialogflow.googleapis.com"`.
775
- # @return [::String]
792
+ # A custom service endpoint, as a hostname or hostname:port. The default is
793
+ # nil, indicating to use the default endpoint in the current universe domain.
794
+ # @return [::String,nil]
776
795
  # @!attribute [rw] credentials
777
796
  # Credentials to send with calls. You may provide any of the following types:
778
797
  # * (`String`) The path to a service account key file in JSON format
@@ -809,13 +828,20 @@ module Google
809
828
  # @!attribute [rw] quota_project
810
829
  # A separate project against which to charge quota.
811
830
  # @return [::String]
831
+ # @!attribute [rw] universe_domain
832
+ # The universe domain within which to make requests. This determines the
833
+ # default endpoint URL. The default value of nil uses the environment
834
+ # universe (usually the default "googleapis.com" universe).
835
+ # @return [::String,nil]
812
836
  #
813
837
  class Configuration
814
838
  extend ::Gapic::Config
815
839
 
840
+ # @private
841
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
816
842
  DEFAULT_ENDPOINT = "dialogflow.googleapis.com"
817
843
 
818
- config_attr :endpoint, DEFAULT_ENDPOINT, ::String
844
+ config_attr :endpoint, nil, ::String, nil
819
845
  config_attr :credentials, nil do |value|
820
846
  allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
821
847
  allowed.any? { |klass| klass === value }
@@ -827,6 +853,7 @@ module Google
827
853
  config_attr :metadata, nil, ::Hash, nil
828
854
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
829
855
  config_attr :quota_project, nil, ::String, nil
856
+ config_attr :universe_domain, nil, ::String, nil
830
857
 
831
858
  # @private
832
859
  # Overrides for http bindings for the RPCs of this service
@@ -31,16 +31,28 @@ module Google
31
31
  # including transcoding, making the REST call, and deserialing the response.
32
32
  #
33
33
  class ServiceStub
34
- def initialize endpoint:, credentials:
34
+ def initialize endpoint:, endpoint_template:, universe_domain:, credentials:
35
35
  # These require statements are intentionally placed here to initialize
36
36
  # the REST modules only when it's required.
37
37
  require "gapic/rest"
38
38
 
39
- @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint, credentials: credentials,
39
+ @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint,
40
+ endpoint_template: endpoint_template,
41
+ universe_domain: universe_domain,
42
+ credentials: credentials,
40
43
  numeric_enums: true,
41
44
  raise_faraday_errors: false
42
45
  end
43
46
 
47
+ ##
48
+ # The effective universe domain
49
+ #
50
+ # @return [String]
51
+ #
52
+ def universe_domain
53
+ @client_stub.universe_domain
54
+ end
55
+
44
56
  ##
45
57
  # Baseline implementation for the list_experiments REST call
46
58
  #
@@ -32,6 +32,9 @@ module Google
32
32
  # Service for managing {::Google::Cloud::Dialogflow::CX::V3::Flow Flows}.
33
33
  #
34
34
  class Client
35
+ # @private
36
+ DEFAULT_ENDPOINT_TEMPLATE = "dialogflow.$UNIVERSE_DOMAIN$"
37
+
35
38
  include Paths
36
39
 
37
40
  # @private
@@ -97,6 +100,15 @@ module Google
97
100
  @config
98
101
  end
99
102
 
103
+ ##
104
+ # The effective universe domain
105
+ #
106
+ # @return [String]
107
+ #
108
+ def universe_domain
109
+ @flows_stub.universe_domain
110
+ end
111
+
100
112
  ##
101
113
  # Create a new Flows client object.
102
114
  #
@@ -130,8 +142,9 @@ module Google
130
142
  credentials = @config.credentials
131
143
  # Use self-signed JWT if the endpoint is unchanged from default,
132
144
  # but only if the default endpoint does not have a region prefix.
133
- enable_self_signed_jwt = @config.endpoint == Configuration::DEFAULT_ENDPOINT &&
134
- !@config.endpoint.split(".").first.include?("-")
145
+ enable_self_signed_jwt = @config.endpoint.nil? ||
146
+ (@config.endpoint == Configuration::DEFAULT_ENDPOINT &&
147
+ !@config.endpoint.split(".").first.include?("-"))
135
148
  credentials ||= Credentials.default scope: @config.scope,
136
149
  enable_self_signed_jwt: enable_self_signed_jwt
137
150
  if credentials.is_a?(::String) || credentials.is_a?(::Hash)
@@ -144,18 +157,22 @@ module Google
144
157
  config.credentials = credentials
145
158
  config.quota_project = @quota_project_id
146
159
  config.endpoint = @config.endpoint
160
+ config.universe_domain = @config.universe_domain
147
161
  end
148
162
 
149
163
  @location_client = Google::Cloud::Location::Locations::Client.new do |config|
150
164
  config.credentials = credentials
151
165
  config.quota_project = @quota_project_id
152
166
  config.endpoint = @config.endpoint
167
+ config.universe_domain = @config.universe_domain
153
168
  end
154
169
 
155
170
  @flows_stub = ::Gapic::ServiceStub.new(
156
171
  ::Google::Cloud::Dialogflow::CX::V3::Flows::Stub,
157
- credentials: credentials,
158
- endpoint: @config.endpoint,
172
+ credentials: credentials,
173
+ endpoint: @config.endpoint,
174
+ endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
175
+ universe_domain: @config.universe_domain,
159
176
  channel_args: @config.channel_args,
160
177
  interceptors: @config.interceptors,
161
178
  channel_pool_config: @config.channel_pool
@@ -1261,9 +1278,9 @@ module Google
1261
1278
  # end
1262
1279
  #
1263
1280
  # @!attribute [rw] endpoint
1264
- # The hostname or hostname:port of the service endpoint.
1265
- # Defaults to `"dialogflow.googleapis.com"`.
1266
- # @return [::String]
1281
+ # A custom service endpoint, as a hostname or hostname:port. The default is
1282
+ # nil, indicating to use the default endpoint in the current universe domain.
1283
+ # @return [::String,nil]
1267
1284
  # @!attribute [rw] credentials
1268
1285
  # Credentials to send with calls. You may provide any of the following types:
1269
1286
  # * (`String`) The path to a service account key file in JSON format
@@ -1309,13 +1326,20 @@ module Google
1309
1326
  # @!attribute [rw] quota_project
1310
1327
  # A separate project against which to charge quota.
1311
1328
  # @return [::String]
1329
+ # @!attribute [rw] universe_domain
1330
+ # The universe domain within which to make requests. This determines the
1331
+ # default endpoint URL. The default value of nil uses the environment
1332
+ # universe (usually the default "googleapis.com" universe).
1333
+ # @return [::String,nil]
1312
1334
  #
1313
1335
  class Configuration
1314
1336
  extend ::Gapic::Config
1315
1337
 
1338
+ # @private
1339
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
1316
1340
  DEFAULT_ENDPOINT = "dialogflow.googleapis.com"
1317
1341
 
1318
- config_attr :endpoint, DEFAULT_ENDPOINT, ::String
1342
+ config_attr :endpoint, nil, ::String, nil
1319
1343
  config_attr :credentials, nil do |value|
1320
1344
  allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
1321
1345
  allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
@@ -1330,6 +1354,7 @@ module Google
1330
1354
  config_attr :metadata, nil, ::Hash, nil
1331
1355
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
1332
1356
  config_attr :quota_project, nil, ::String, nil
1357
+ config_attr :universe_domain, nil, ::String, nil
1333
1358
 
1334
1359
  # @private
1335
1360
  def initialize parent_config = nil
@@ -27,6 +27,9 @@ module Google
27
27
  module Flows
28
28
  # Service that implements Longrunning Operations API.
29
29
  class Operations
30
+ # @private
31
+ DEFAULT_ENDPOINT_TEMPLATE = "dialogflow.$UNIVERSE_DOMAIN$"
32
+
30
33
  # @private
31
34
  attr_reader :operations_stub
32
35
 
@@ -61,6 +64,15 @@ module Google
61
64
  @config
62
65
  end
63
66
 
67
+ ##
68
+ # The effective universe domain
69
+ #
70
+ # @return [String]
71
+ #
72
+ def universe_domain
73
+ @operations_stub.universe_domain
74
+ end
75
+
64
76
  ##
65
77
  # Create a new Operations client object.
66
78
  #
@@ -91,8 +103,10 @@ module Google
91
103
 
92
104
  @operations_stub = ::Gapic::ServiceStub.new(
93
105
  ::Google::Longrunning::Operations::Stub,
94
- credentials: credentials,
95
- endpoint: @config.endpoint,
106
+ credentials: credentials,
107
+ endpoint: @config.endpoint,
108
+ endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
109
+ universe_domain: @config.universe_domain,
96
110
  channel_args: @config.channel_args,
97
111
  interceptors: @config.interceptors,
98
112
  channel_pool_config: @config.channel_pool
@@ -614,9 +628,9 @@ module Google
614
628
  # end
615
629
  #
616
630
  # @!attribute [rw] endpoint
617
- # The hostname or hostname:port of the service endpoint.
618
- # Defaults to `"dialogflow.googleapis.com"`.
619
- # @return [::String]
631
+ # A custom service endpoint, as a hostname or hostname:port. The default is
632
+ # nil, indicating to use the default endpoint in the current universe domain.
633
+ # @return [::String,nil]
620
634
  # @!attribute [rw] credentials
621
635
  # Credentials to send with calls. You may provide any of the following types:
622
636
  # * (`String`) The path to a service account key file in JSON format
@@ -662,13 +676,20 @@ module Google
662
676
  # @!attribute [rw] quota_project
663
677
  # A separate project against which to charge quota.
664
678
  # @return [::String]
679
+ # @!attribute [rw] universe_domain
680
+ # The universe domain within which to make requests. This determines the
681
+ # default endpoint URL. The default value of nil uses the environment
682
+ # universe (usually the default "googleapis.com" universe).
683
+ # @return [::String,nil]
665
684
  #
666
685
  class Configuration
667
686
  extend ::Gapic::Config
668
687
 
688
+ # @private
689
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
669
690
  DEFAULT_ENDPOINT = "dialogflow.googleapis.com"
670
691
 
671
- config_attr :endpoint, DEFAULT_ENDPOINT, ::String
692
+ config_attr :endpoint, nil, ::String, nil
672
693
  config_attr :credentials, nil do |value|
673
694
  allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
674
695
  allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
@@ -683,6 +704,7 @@ module Google
683
704
  config_attr :metadata, nil, ::Hash, nil
684
705
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
685
706
  config_attr :quota_project, nil, ::String, nil
707
+ config_attr :universe_domain, nil, ::String, nil
686
708
 
687
709
  # @private
688
710
  def initialize parent_config = nil
@@ -34,6 +34,9 @@ module Google
34
34
  # Service for managing {::Google::Cloud::Dialogflow::CX::V3::Flow Flows}.
35
35
  #
36
36
  class Client
37
+ # @private
38
+ DEFAULT_ENDPOINT_TEMPLATE = "dialogflow.$UNIVERSE_DOMAIN$"
39
+
37
40
  include Paths
38
41
 
39
42
  # @private
@@ -99,6 +102,15 @@ module Google
99
102
  @config
100
103
  end
101
104
 
105
+ ##
106
+ # The effective universe domain
107
+ #
108
+ # @return [String]
109
+ #
110
+ def universe_domain
111
+ @flows_stub.universe_domain
112
+ end
113
+
102
114
  ##
103
115
  # Create a new Flows REST client object.
104
116
  #
@@ -126,8 +138,9 @@ module Google
126
138
  credentials = @config.credentials
127
139
  # Use self-signed JWT if the endpoint is unchanged from default,
128
140
  # but only if the default endpoint does not have a region prefix.
129
- enable_self_signed_jwt = @config.endpoint == Configuration::DEFAULT_ENDPOINT &&
130
- !@config.endpoint.split(".").first.include?("-")
141
+ enable_self_signed_jwt = @config.endpoint.nil? ||
142
+ (@config.endpoint == Configuration::DEFAULT_ENDPOINT &&
143
+ !@config.endpoint.split(".").first.include?("-"))
131
144
  credentials ||= Credentials.default scope: @config.scope,
132
145
  enable_self_signed_jwt: enable_self_signed_jwt
133
146
  if credentials.is_a?(::String) || credentials.is_a?(::Hash)
@@ -141,16 +154,23 @@ module Google
141
154
  config.credentials = credentials
142
155
  config.quota_project = @quota_project_id
143
156
  config.endpoint = @config.endpoint
157
+ config.universe_domain = @config.universe_domain
144
158
  end
145
159
 
146
160
  @location_client = Google::Cloud::Location::Locations::Rest::Client.new do |config|
147
161
  config.credentials = credentials
148
162
  config.quota_project = @quota_project_id
149
163
  config.endpoint = @config.endpoint
164
+ config.universe_domain = @config.universe_domain
150
165
  config.bindings_override = @config.bindings_override
151
166
  end
152
167
 
153
- @flows_stub = ::Google::Cloud::Dialogflow::CX::V3::Flows::Rest::ServiceStub.new endpoint: @config.endpoint, credentials: credentials
168
+ @flows_stub = ::Google::Cloud::Dialogflow::CX::V3::Flows::Rest::ServiceStub.new(
169
+ endpoint: @config.endpoint,
170
+ endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
171
+ universe_domain: @config.universe_domain,
172
+ credentials: credentials
173
+ )
154
174
  end
155
175
 
156
176
  ##
@@ -1182,9 +1202,9 @@ module Google
1182
1202
  # end
1183
1203
  #
1184
1204
  # @!attribute [rw] endpoint
1185
- # The hostname or hostname:port of the service endpoint.
1186
- # Defaults to `"dialogflow.googleapis.com"`.
1187
- # @return [::String]
1205
+ # A custom service endpoint, as a hostname or hostname:port. The default is
1206
+ # nil, indicating to use the default endpoint in the current universe domain.
1207
+ # @return [::String,nil]
1188
1208
  # @!attribute [rw] credentials
1189
1209
  # Credentials to send with calls. You may provide any of the following types:
1190
1210
  # * (`String`) The path to a service account key file in JSON format
@@ -1221,13 +1241,20 @@ module Google
1221
1241
  # @!attribute [rw] quota_project
1222
1242
  # A separate project against which to charge quota.
1223
1243
  # @return [::String]
1244
+ # @!attribute [rw] universe_domain
1245
+ # The universe domain within which to make requests. This determines the
1246
+ # default endpoint URL. The default value of nil uses the environment
1247
+ # universe (usually the default "googleapis.com" universe).
1248
+ # @return [::String,nil]
1224
1249
  #
1225
1250
  class Configuration
1226
1251
  extend ::Gapic::Config
1227
1252
 
1253
+ # @private
1254
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
1228
1255
  DEFAULT_ENDPOINT = "dialogflow.googleapis.com"
1229
1256
 
1230
- config_attr :endpoint, DEFAULT_ENDPOINT, ::String
1257
+ config_attr :endpoint, nil, ::String, nil
1231
1258
  config_attr :credentials, nil do |value|
1232
1259
  allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
1233
1260
  allowed.any? { |klass| klass === value }
@@ -1239,6 +1266,7 @@ module Google
1239
1266
  config_attr :metadata, nil, ::Hash, nil
1240
1267
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
1241
1268
  config_attr :quota_project, nil, ::String, nil
1269
+ config_attr :universe_domain, nil, ::String, nil
1242
1270
 
1243
1271
  # @private
1244
1272
  # Overrides for http bindings for the RPCs of this service
@@ -27,6 +27,9 @@ module Google
27
27
  module Rest
28
28
  # Service that implements Longrunning Operations API.
29
29
  class Operations
30
+ # @private
31
+ DEFAULT_ENDPOINT_TEMPLATE = "dialogflow.$UNIVERSE_DOMAIN$"
32
+
30
33
  # @private
31
34
  attr_reader :operations_stub
32
35
 
@@ -61,6 +64,15 @@ module Google
61
64
  @config
62
65
  end
63
66
 
67
+ ##
68
+ # The effective universe domain
69
+ #
70
+ # @return [String]
71
+ #
72
+ def universe_domain
73
+ @operations_stub.universe_domain
74
+ end
75
+
64
76
  ##
65
77
  # Create a new Operations client object.
66
78
  #
@@ -85,8 +97,10 @@ module Google
85
97
  @quota_project_id ||= credentials.quota_project_id if credentials.respond_to? :quota_project_id
86
98
 
87
99
  @operations_stub = OperationsServiceStub.new(
88
- endpoint: @config.endpoint,
89
- credentials: credentials
100
+ endpoint: @config.endpoint,
101
+ endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
102
+ universe_domain: @config.universe_domain,
103
+ credentials: credentials
90
104
  )
91
105
 
92
106
  # Used by an LRO wrapper for some methods of this service
@@ -479,9 +493,9 @@ module Google
479
493
  # end
480
494
  #
481
495
  # @!attribute [rw] endpoint
482
- # The hostname or hostname:port of the service endpoint.
483
- # Defaults to `"dialogflow.googleapis.com"`.
484
- # @return [::String]
496
+ # A custom service endpoint, as a hostname or hostname:port. The default is
497
+ # nil, indicating to use the default endpoint in the current universe domain.
498
+ # @return [::String,nil]
485
499
  # @!attribute [rw] credentials
486
500
  # Credentials to send with calls. You may provide any of the following types:
487
501
  # * (`String`) The path to a service account key file in JSON format
@@ -518,13 +532,20 @@ module Google
518
532
  # @!attribute [rw] quota_project
519
533
  # A separate project against which to charge quota.
520
534
  # @return [::String]
535
+ # @!attribute [rw] universe_domain
536
+ # The universe domain within which to make requests. This determines the
537
+ # default endpoint URL. The default value of nil uses the environment
538
+ # universe (usually the default "googleapis.com" universe).
539
+ # @return [::String,nil]
521
540
  #
522
541
  class Configuration
523
542
  extend ::Gapic::Config
524
543
 
544
+ # @private
545
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
525
546
  DEFAULT_ENDPOINT = "dialogflow.googleapis.com"
526
547
 
527
- config_attr :endpoint, DEFAULT_ENDPOINT, ::String
548
+ config_attr :endpoint, nil, ::String, nil
528
549
  config_attr :credentials, nil do |value|
529
550
  allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
530
551
  allowed.any? { |klass| klass === value }
@@ -536,6 +557,7 @@ module Google
536
557
  config_attr :metadata, nil, ::Hash, nil
537
558
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
538
559
  config_attr :quota_project, nil, ::String, nil
560
+ config_attr :universe_domain, nil, ::String, nil
539
561
 
540
562
  # @private
541
563
  def initialize parent_config = nil
@@ -618,12 +640,15 @@ module Google
618
640
  # Service stub contains baseline method implementations
619
641
  # including transcoding, making the REST call, and deserialing the response.
620
642
  class OperationsServiceStub
621
- def initialize endpoint:, credentials:
643
+ def initialize endpoint:, endpoint_template:, universe_domain:, credentials:
622
644
  # These require statements are intentionally placed here to initialize
623
645
  # the REST modules only when it's required.
624
646
  require "gapic/rest"
625
647
 
626
- @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint, credentials: credentials
648
+ @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint,
649
+ endpoint_template: endpoint_template,
650
+ universe_domain: universe_domain,
651
+ credentials: credentials
627
652
  end
628
653
 
629
654
  ##
@@ -31,16 +31,28 @@ module Google
31
31
  # including transcoding, making the REST call, and deserialing the response.
32
32
  #
33
33
  class ServiceStub
34
- def initialize endpoint:, credentials:
34
+ def initialize endpoint:, endpoint_template:, universe_domain:, credentials:
35
35
  # These require statements are intentionally placed here to initialize
36
36
  # the REST modules only when it's required.
37
37
  require "gapic/rest"
38
38
 
39
- @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint, credentials: credentials,
39
+ @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint,
40
+ endpoint_template: endpoint_template,
41
+ universe_domain: universe_domain,
42
+ credentials: credentials,
40
43
  numeric_enums: true,
41
44
  raise_faraday_errors: false
42
45
  end
43
46
 
47
+ ##
48
+ # The effective universe domain
49
+ #
50
+ # @return [String]
51
+ #
52
+ def universe_domain
53
+ @client_stub.universe_domain
54
+ end
55
+
44
56
  ##
45
57
  # Baseline implementation for the create_flow REST call
46
58
  #
@@ -32,6 +32,9 @@ module Google
32
32
  # Service for managing {::Google::Cloud::Dialogflow::CX::V3::Generator Generators}
33
33
  #
34
34
  class Client
35
+ # @private
36
+ DEFAULT_ENDPOINT_TEMPLATE = "dialogflow.$UNIVERSE_DOMAIN$"
37
+
35
38
  include Paths
36
39
 
37
40
  # @private
@@ -97,6 +100,15 @@ module Google
97
100
  @config
98
101
  end
99
102
 
103
+ ##
104
+ # The effective universe domain
105
+ #
106
+ # @return [String]
107
+ #
108
+ def universe_domain
109
+ @generators_stub.universe_domain
110
+ end
111
+
100
112
  ##
101
113
  # Create a new Generators client object.
102
114
  #
@@ -130,8 +142,9 @@ module Google
130
142
  credentials = @config.credentials
131
143
  # Use self-signed JWT if the endpoint is unchanged from default,
132
144
  # but only if the default endpoint does not have a region prefix.
133
- enable_self_signed_jwt = @config.endpoint == Configuration::DEFAULT_ENDPOINT &&
134
- !@config.endpoint.split(".").first.include?("-")
145
+ enable_self_signed_jwt = @config.endpoint.nil? ||
146
+ (@config.endpoint == Configuration::DEFAULT_ENDPOINT &&
147
+ !@config.endpoint.split(".").first.include?("-"))
135
148
  credentials ||= Credentials.default scope: @config.scope,
136
149
  enable_self_signed_jwt: enable_self_signed_jwt
137
150
  if credentials.is_a?(::String) || credentials.is_a?(::Hash)
@@ -144,12 +157,15 @@ module Google
144
157
  config.credentials = credentials
145
158
  config.quota_project = @quota_project_id
146
159
  config.endpoint = @config.endpoint
160
+ config.universe_domain = @config.universe_domain
147
161
  end
148
162
 
149
163
  @generators_stub = ::Gapic::ServiceStub.new(
150
164
  ::Google::Cloud::Dialogflow::CX::V3::Generators::Stub,
151
- credentials: credentials,
152
- endpoint: @config.endpoint,
165
+ credentials: credentials,
166
+ endpoint: @config.endpoint,
167
+ endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
168
+ universe_domain: @config.universe_domain,
153
169
  channel_args: @config.channel_args,
154
170
  interceptors: @config.interceptors,
155
171
  channel_pool_config: @config.channel_pool
@@ -660,9 +676,9 @@ module Google
660
676
  # end
661
677
  #
662
678
  # @!attribute [rw] endpoint
663
- # The hostname or hostname:port of the service endpoint.
664
- # Defaults to `"dialogflow.googleapis.com"`.
665
- # @return [::String]
679
+ # A custom service endpoint, as a hostname or hostname:port. The default is
680
+ # nil, indicating to use the default endpoint in the current universe domain.
681
+ # @return [::String,nil]
666
682
  # @!attribute [rw] credentials
667
683
  # Credentials to send with calls. You may provide any of the following types:
668
684
  # * (`String`) The path to a service account key file in JSON format
@@ -708,13 +724,20 @@ module Google
708
724
  # @!attribute [rw] quota_project
709
725
  # A separate project against which to charge quota.
710
726
  # @return [::String]
727
+ # @!attribute [rw] universe_domain
728
+ # The universe domain within which to make requests. This determines the
729
+ # default endpoint URL. The default value of nil uses the environment
730
+ # universe (usually the default "googleapis.com" universe).
731
+ # @return [::String,nil]
711
732
  #
712
733
  class Configuration
713
734
  extend ::Gapic::Config
714
735
 
736
+ # @private
737
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
715
738
  DEFAULT_ENDPOINT = "dialogflow.googleapis.com"
716
739
 
717
- config_attr :endpoint, DEFAULT_ENDPOINT, ::String
740
+ config_attr :endpoint, nil, ::String, nil
718
741
  config_attr :credentials, nil do |value|
719
742
  allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
720
743
  allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
@@ -729,6 +752,7 @@ module Google
729
752
  config_attr :metadata, nil, ::Hash, nil
730
753
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
731
754
  config_attr :quota_project, nil, ::String, nil
755
+ config_attr :universe_domain, nil, ::String, nil
732
756
 
733
757
  # @private
734
758
  def initialize parent_config = nil