google-cloud-dialogflow-v2 0.31.0 → 0.32.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (75) hide show
  1. checksums.yaml +4 -4
  2. data/AUTHENTICATION.md +72 -101
  3. data/lib/google/cloud/dialogflow/v2/agents/client.rb +39 -14
  4. data/lib/google/cloud/dialogflow/v2/agents/operations.rb +28 -6
  5. data/lib/google/cloud/dialogflow/v2/agents/rest/client.rb +37 -9
  6. data/lib/google/cloud/dialogflow/v2/agents/rest/operations.rb +33 -8
  7. data/lib/google/cloud/dialogflow/v2/agents/rest/service_stub.rb +23 -2
  8. data/lib/google/cloud/dialogflow/v2/answer_records/client.rb +38 -14
  9. data/lib/google/cloud/dialogflow/v2/answer_records/rest/client.rb +36 -9
  10. data/lib/google/cloud/dialogflow/v2/answer_records/rest/service_stub.rb +23 -2
  11. data/lib/google/cloud/dialogflow/v2/contexts/client.rb +38 -14
  12. data/lib/google/cloud/dialogflow/v2/contexts/rest/client.rb +36 -9
  13. data/lib/google/cloud/dialogflow/v2/contexts/rest/service_stub.rb +23 -2
  14. data/lib/google/cloud/dialogflow/v2/conversation_datasets/client.rb +39 -14
  15. data/lib/google/cloud/dialogflow/v2/conversation_datasets/operations.rb +28 -6
  16. data/lib/google/cloud/dialogflow/v2/conversation_datasets/rest/client.rb +37 -9
  17. data/lib/google/cloud/dialogflow/v2/conversation_datasets/rest/operations.rb +33 -8
  18. data/lib/google/cloud/dialogflow/v2/conversation_datasets/rest/service_stub.rb +23 -2
  19. data/lib/google/cloud/dialogflow/v2/conversation_models/client.rb +39 -14
  20. data/lib/google/cloud/dialogflow/v2/conversation_models/operations.rb +28 -6
  21. data/lib/google/cloud/dialogflow/v2/conversation_models/rest/client.rb +37 -9
  22. data/lib/google/cloud/dialogflow/v2/conversation_models/rest/operations.rb +33 -8
  23. data/lib/google/cloud/dialogflow/v2/conversation_models/rest/service_stub.rb +23 -2
  24. data/lib/google/cloud/dialogflow/v2/conversation_profiles/client.rb +39 -14
  25. data/lib/google/cloud/dialogflow/v2/conversation_profiles/operations.rb +28 -6
  26. data/lib/google/cloud/dialogflow/v2/conversation_profiles/rest/client.rb +37 -9
  27. data/lib/google/cloud/dialogflow/v2/conversation_profiles/rest/operations.rb +33 -8
  28. data/lib/google/cloud/dialogflow/v2/conversation_profiles/rest/service_stub.rb +23 -2
  29. data/lib/google/cloud/dialogflow/v2/conversations/client.rb +38 -14
  30. data/lib/google/cloud/dialogflow/v2/conversations/rest/client.rb +36 -9
  31. data/lib/google/cloud/dialogflow/v2/conversations/rest/service_stub.rb +23 -2
  32. data/lib/google/cloud/dialogflow/v2/documents/client.rb +39 -14
  33. data/lib/google/cloud/dialogflow/v2/documents/operations.rb +28 -6
  34. data/lib/google/cloud/dialogflow/v2/documents/rest/client.rb +37 -9
  35. data/lib/google/cloud/dialogflow/v2/documents/rest/operations.rb +33 -8
  36. data/lib/google/cloud/dialogflow/v2/documents/rest/service_stub.rb +23 -2
  37. data/lib/google/cloud/dialogflow/v2/entity_types/client.rb +39 -14
  38. data/lib/google/cloud/dialogflow/v2/entity_types/operations.rb +28 -6
  39. data/lib/google/cloud/dialogflow/v2/entity_types/rest/client.rb +37 -9
  40. data/lib/google/cloud/dialogflow/v2/entity_types/rest/operations.rb +33 -8
  41. data/lib/google/cloud/dialogflow/v2/entity_types/rest/service_stub.rb +23 -2
  42. data/lib/google/cloud/dialogflow/v2/environments/client.rb +38 -14
  43. data/lib/google/cloud/dialogflow/v2/environments/rest/client.rb +36 -9
  44. data/lib/google/cloud/dialogflow/v2/environments/rest/service_stub.rb +23 -2
  45. data/lib/google/cloud/dialogflow/v2/fulfillments/client.rb +38 -14
  46. data/lib/google/cloud/dialogflow/v2/fulfillments/rest/client.rb +36 -9
  47. data/lib/google/cloud/dialogflow/v2/fulfillments/rest/service_stub.rb +23 -2
  48. data/lib/google/cloud/dialogflow/v2/intents/client.rb +39 -14
  49. data/lib/google/cloud/dialogflow/v2/intents/operations.rb +28 -6
  50. data/lib/google/cloud/dialogflow/v2/intents/rest/client.rb +37 -9
  51. data/lib/google/cloud/dialogflow/v2/intents/rest/operations.rb +33 -8
  52. data/lib/google/cloud/dialogflow/v2/intents/rest/service_stub.rb +23 -2
  53. data/lib/google/cloud/dialogflow/v2/knowledge_bases/client.rb +38 -14
  54. data/lib/google/cloud/dialogflow/v2/knowledge_bases/rest/client.rb +36 -9
  55. data/lib/google/cloud/dialogflow/v2/knowledge_bases/rest/service_stub.rb +23 -2
  56. data/lib/google/cloud/dialogflow/v2/participants/client.rb +38 -14
  57. data/lib/google/cloud/dialogflow/v2/participants/rest/client.rb +36 -9
  58. data/lib/google/cloud/dialogflow/v2/participants/rest/service_stub.rb +23 -2
  59. data/lib/google/cloud/dialogflow/v2/session_entity_types/client.rb +38 -14
  60. data/lib/google/cloud/dialogflow/v2/session_entity_types/rest/client.rb +36 -9
  61. data/lib/google/cloud/dialogflow/v2/session_entity_types/rest/service_stub.rb +23 -2
  62. data/lib/google/cloud/dialogflow/v2/sessions/client.rb +38 -14
  63. data/lib/google/cloud/dialogflow/v2/sessions/rest/client.rb +36 -9
  64. data/lib/google/cloud/dialogflow/v2/sessions/rest/service_stub.rb +23 -2
  65. data/lib/google/cloud/dialogflow/v2/version.rb +1 -1
  66. data/lib/google/cloud/dialogflow/v2/versions/client.rb +38 -14
  67. data/lib/google/cloud/dialogflow/v2/versions/rest/client.rb +36 -9
  68. data/lib/google/cloud/dialogflow/v2/versions/rest/service_stub.rb +23 -2
  69. data/proto_docs/google/api/client.rb +1 -0
  70. data/proto_docs/google/cloud/dialogflow/v2/agent.rb +1 -0
  71. data/proto_docs/google/cloud/dialogflow/v2/answer_record.rb +1 -0
  72. data/proto_docs/google/cloud/dialogflow/v2/audio_config.rb +1 -0
  73. data/proto_docs/google/cloud/dialogflow/v2/fulfillment.rb +1 -0
  74. data/proto_docs/google/cloud/dialogflow/v2/session.rb +1 -0
  75. metadata +6 -6
@@ -33,6 +33,9 @@ module Google
33
33
  # Service for managing {::Google::Cloud::Dialogflow::V2::Participant Participants}.
34
34
  #
35
35
  class Client
36
+ # @private
37
+ DEFAULT_ENDPOINT_TEMPLATE = "dialogflow.$UNIVERSE_DOMAIN$"
38
+
36
39
  include Paths
37
40
 
38
41
  # @private
@@ -103,6 +106,15 @@ module Google
103
106
  @config
104
107
  end
105
108
 
109
+ ##
110
+ # The effective universe domain
111
+ #
112
+ # @return [String]
113
+ #
114
+ def universe_domain
115
+ @participants_stub.universe_domain
116
+ end
117
+
106
118
  ##
107
119
  # Create a new Participants REST client object.
108
120
  #
@@ -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)
@@ -141,14 +154,20 @@ module Google
141
154
  @quota_project_id = @config.quota_project
142
155
  @quota_project_id ||= credentials.quota_project_id if credentials.respond_to? :quota_project_id
143
156
 
157
+ @participants_stub = ::Google::Cloud::Dialogflow::V2::Participants::Rest::ServiceStub.new(
158
+ endpoint: @config.endpoint,
159
+ endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
160
+ universe_domain: @config.universe_domain,
161
+ credentials: credentials
162
+ )
163
+
144
164
  @location_client = Google::Cloud::Location::Locations::Rest::Client.new do |config|
145
165
  config.credentials = credentials
146
166
  config.quota_project = @quota_project_id
147
- config.endpoint = @config.endpoint
167
+ config.endpoint = @participants_stub.endpoint
168
+ config.universe_domain = @participants_stub.universe_domain
148
169
  config.bindings_override = @config.bindings_override
149
170
  end
150
-
151
- @participants_stub = ::Google::Cloud::Dialogflow::V2::Participants::Rest::ServiceStub.new endpoint: @config.endpoint, credentials: credentials
152
171
  end
153
172
 
154
173
  ##
@@ -916,9 +935,9 @@ module Google
916
935
  # end
917
936
  #
918
937
  # @!attribute [rw] endpoint
919
- # The hostname or hostname:port of the service endpoint.
920
- # Defaults to `"dialogflow.googleapis.com"`.
921
- # @return [::String]
938
+ # A custom service endpoint, as a hostname or hostname:port. The default is
939
+ # nil, indicating to use the default endpoint in the current universe domain.
940
+ # @return [::String,nil]
922
941
  # @!attribute [rw] credentials
923
942
  # Credentials to send with calls. You may provide any of the following types:
924
943
  # * (`String`) The path to a service account key file in JSON format
@@ -955,13 +974,20 @@ module Google
955
974
  # @!attribute [rw] quota_project
956
975
  # A separate project against which to charge quota.
957
976
  # @return [::String]
977
+ # @!attribute [rw] universe_domain
978
+ # The universe domain within which to make requests. This determines the
979
+ # default endpoint URL. The default value of nil uses the environment
980
+ # universe (usually the default "googleapis.com" universe).
981
+ # @return [::String,nil]
958
982
  #
959
983
  class Configuration
960
984
  extend ::Gapic::Config
961
985
 
986
+ # @private
987
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
962
988
  DEFAULT_ENDPOINT = "dialogflow.googleapis.com"
963
989
 
964
- config_attr :endpoint, DEFAULT_ENDPOINT, ::String
990
+ config_attr :endpoint, nil, ::String, nil
965
991
  config_attr :credentials, nil do |value|
966
992
  allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
967
993
  allowed.any? { |klass| klass === value }
@@ -973,6 +999,7 @@ module Google
973
999
  config_attr :metadata, nil, ::Hash, nil
974
1000
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
975
1001
  config_attr :quota_project, nil, ::String, nil
1002
+ config_attr :universe_domain, nil, ::String, nil
976
1003
 
977
1004
  # @private
978
1005
  # Overrides for http bindings for the RPCs of this service
@@ -30,16 +30,37 @@ 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
+
55
+ ##
56
+ # The effective endpoint
57
+ #
58
+ # @return [String]
59
+ #
60
+ def endpoint
61
+ @client_stub.endpoint
62
+ end
63
+
43
64
  ##
44
65
  # Baseline implementation for the create_participant REST call
45
66
  #
@@ -32,6 +32,9 @@ module Google
32
32
  # {::Google::Cloud::Dialogflow::V2::SessionEntityType SessionEntityTypes}.
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
+ @session_entity_types_stub.universe_domain
110
+ end
111
+
100
112
  ##
101
113
  # Create a new SessionEntityTypes 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)
@@ -140,20 +153,23 @@ module Google
140
153
  @quota_project_id = @config.quota_project
141
154
  @quota_project_id ||= credentials.quota_project_id if credentials.respond_to? :quota_project_id
142
155
 
143
- @location_client = Google::Cloud::Location::Locations::Client.new do |config|
144
- config.credentials = credentials
145
- config.quota_project = @quota_project_id
146
- config.endpoint = @config.endpoint
147
- end
148
-
149
156
  @session_entity_types_stub = ::Gapic::ServiceStub.new(
150
157
  ::Google::Cloud::Dialogflow::V2::SessionEntityTypes::Stub,
151
- credentials: credentials,
152
- endpoint: @config.endpoint,
158
+ credentials: credentials,
159
+ endpoint: @config.endpoint,
160
+ endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
161
+ universe_domain: @config.universe_domain,
153
162
  channel_args: @config.channel_args,
154
163
  interceptors: @config.interceptors,
155
164
  channel_pool_config: @config.channel_pool
156
165
  )
166
+
167
+ @location_client = Google::Cloud::Location::Locations::Client.new do |config|
168
+ config.credentials = credentials
169
+ config.quota_project = @quota_project_id
170
+ config.endpoint = @session_entity_types_stub.endpoint
171
+ config.universe_domain = @session_entity_types_stub.universe_domain
172
+ end
157
173
  end
158
174
 
159
175
  ##
@@ -679,9 +695,9 @@ module Google
679
695
  # end
680
696
  #
681
697
  # @!attribute [rw] endpoint
682
- # The hostname or hostname:port of the service endpoint.
683
- # Defaults to `"dialogflow.googleapis.com"`.
684
- # @return [::String]
698
+ # A custom service endpoint, as a hostname or hostname:port. The default is
699
+ # nil, indicating to use the default endpoint in the current universe domain.
700
+ # @return [::String,nil]
685
701
  # @!attribute [rw] credentials
686
702
  # Credentials to send with calls. You may provide any of the following types:
687
703
  # * (`String`) The path to a service account key file in JSON format
@@ -727,13 +743,20 @@ module Google
727
743
  # @!attribute [rw] quota_project
728
744
  # A separate project against which to charge quota.
729
745
  # @return [::String]
746
+ # @!attribute [rw] universe_domain
747
+ # The universe domain within which to make requests. This determines the
748
+ # default endpoint URL. The default value of nil uses the environment
749
+ # universe (usually the default "googleapis.com" universe).
750
+ # @return [::String,nil]
730
751
  #
731
752
  class Configuration
732
753
  extend ::Gapic::Config
733
754
 
755
+ # @private
756
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
734
757
  DEFAULT_ENDPOINT = "dialogflow.googleapis.com"
735
758
 
736
- config_attr :endpoint, DEFAULT_ENDPOINT, ::String
759
+ config_attr :endpoint, nil, ::String, nil
737
760
  config_attr :credentials, nil do |value|
738
761
  allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
739
762
  allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
@@ -748,6 +771,7 @@ module Google
748
771
  config_attr :metadata, nil, ::Hash, nil
749
772
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
750
773
  config_attr :quota_project, nil, ::String, nil
774
+ config_attr :universe_domain, nil, ::String, nil
751
775
 
752
776
  # @private
753
777
  def initialize parent_config = nil
@@ -34,6 +34,9 @@ module Google
34
34
  # {::Google::Cloud::Dialogflow::V2::SessionEntityType SessionEntityTypes}.
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
+ @session_entity_types_stub.universe_domain
112
+ end
113
+
102
114
  ##
103
115
  # Create a new SessionEntityTypes 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)
@@ -137,14 +150,20 @@ module Google
137
150
  @quota_project_id = @config.quota_project
138
151
  @quota_project_id ||= credentials.quota_project_id if credentials.respond_to? :quota_project_id
139
152
 
153
+ @session_entity_types_stub = ::Google::Cloud::Dialogflow::V2::SessionEntityTypes::Rest::ServiceStub.new(
154
+ endpoint: @config.endpoint,
155
+ endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
156
+ universe_domain: @config.universe_domain,
157
+ credentials: credentials
158
+ )
159
+
140
160
  @location_client = Google::Cloud::Location::Locations::Rest::Client.new do |config|
141
161
  config.credentials = credentials
142
162
  config.quota_project = @quota_project_id
143
- config.endpoint = @config.endpoint
163
+ config.endpoint = @session_entity_types_stub.endpoint
164
+ config.universe_domain = @session_entity_types_stub.universe_domain
144
165
  config.bindings_override = @config.bindings_override
145
166
  end
146
-
147
- @session_entity_types_stub = ::Google::Cloud::Dialogflow::V2::SessionEntityTypes::Rest::ServiceStub.new endpoint: @config.endpoint, credentials: credentials
148
167
  end
149
168
 
150
169
  ##
@@ -635,9 +654,9 @@ module Google
635
654
  # end
636
655
  #
637
656
  # @!attribute [rw] endpoint
638
- # The hostname or hostname:port of the service endpoint.
639
- # Defaults to `"dialogflow.googleapis.com"`.
640
- # @return [::String]
657
+ # A custom service endpoint, as a hostname or hostname:port. The default is
658
+ # nil, indicating to use the default endpoint in the current universe domain.
659
+ # @return [::String,nil]
641
660
  # @!attribute [rw] credentials
642
661
  # Credentials to send with calls. You may provide any of the following types:
643
662
  # * (`String`) The path to a service account key file in JSON format
@@ -674,13 +693,20 @@ module Google
674
693
  # @!attribute [rw] quota_project
675
694
  # A separate project against which to charge quota.
676
695
  # @return [::String]
696
+ # @!attribute [rw] universe_domain
697
+ # The universe domain within which to make requests. This determines the
698
+ # default endpoint URL. The default value of nil uses the environment
699
+ # universe (usually the default "googleapis.com" universe).
700
+ # @return [::String,nil]
677
701
  #
678
702
  class Configuration
679
703
  extend ::Gapic::Config
680
704
 
705
+ # @private
706
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
681
707
  DEFAULT_ENDPOINT = "dialogflow.googleapis.com"
682
708
 
683
- config_attr :endpoint, DEFAULT_ENDPOINT, ::String
709
+ config_attr :endpoint, nil, ::String, nil
684
710
  config_attr :credentials, nil do |value|
685
711
  allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
686
712
  allowed.any? { |klass| klass === value }
@@ -692,6 +718,7 @@ module Google
692
718
  config_attr :metadata, nil, ::Hash, nil
693
719
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
694
720
  config_attr :quota_project, nil, ::String, nil
721
+ config_attr :universe_domain, nil, ::String, nil
695
722
 
696
723
  # @private
697
724
  # Overrides for http bindings for the RPCs of this service
@@ -30,16 +30,37 @@ 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
+
55
+ ##
56
+ # The effective endpoint
57
+ #
58
+ # @return [String]
59
+ #
60
+ def endpoint
61
+ @client_stub.endpoint
62
+ end
63
+
43
64
  ##
44
65
  # Baseline implementation for the list_session_entity_types REST call
45
66
  #
@@ -34,6 +34,9 @@ module Google
34
34
  # guide](https://cloud.google.com/dialogflow/docs/api-overview).
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
@@ -106,6 +109,15 @@ module Google
106
109
  @config
107
110
  end
108
111
 
112
+ ##
113
+ # The effective universe domain
114
+ #
115
+ # @return [String]
116
+ #
117
+ def universe_domain
118
+ @sessions_stub.universe_domain
119
+ end
120
+
109
121
  ##
110
122
  # Create a new Sessions client object.
111
123
  #
@@ -139,8 +151,9 @@ module Google
139
151
  credentials = @config.credentials
140
152
  # Use self-signed JWT if the endpoint is unchanged from default,
141
153
  # but only if the default endpoint does not have a region prefix.
142
- enable_self_signed_jwt = @config.endpoint == Configuration::DEFAULT_ENDPOINT &&
143
- !@config.endpoint.split(".").first.include?("-")
154
+ enable_self_signed_jwt = @config.endpoint.nil? ||
155
+ (@config.endpoint == Configuration::DEFAULT_ENDPOINT &&
156
+ !@config.endpoint.split(".").first.include?("-"))
144
157
  credentials ||= Credentials.default scope: @config.scope,
145
158
  enable_self_signed_jwt: enable_self_signed_jwt
146
159
  if credentials.is_a?(::String) || credentials.is_a?(::Hash)
@@ -149,20 +162,23 @@ module Google
149
162
  @quota_project_id = @config.quota_project
150
163
  @quota_project_id ||= credentials.quota_project_id if credentials.respond_to? :quota_project_id
151
164
 
152
- @location_client = Google::Cloud::Location::Locations::Client.new do |config|
153
- config.credentials = credentials
154
- config.quota_project = @quota_project_id
155
- config.endpoint = @config.endpoint
156
- end
157
-
158
165
  @sessions_stub = ::Gapic::ServiceStub.new(
159
166
  ::Google::Cloud::Dialogflow::V2::Sessions::Stub,
160
- credentials: credentials,
161
- endpoint: @config.endpoint,
167
+ credentials: credentials,
168
+ endpoint: @config.endpoint,
169
+ endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
170
+ universe_domain: @config.universe_domain,
162
171
  channel_args: @config.channel_args,
163
172
  interceptors: @config.interceptors,
164
173
  channel_pool_config: @config.channel_pool
165
174
  )
175
+
176
+ @location_client = Google::Cloud::Location::Locations::Client.new do |config|
177
+ config.credentials = credentials
178
+ config.quota_project = @quota_project_id
179
+ config.endpoint = @sessions_stub.endpoint
180
+ config.universe_domain = @sessions_stub.universe_domain
181
+ end
166
182
  end
167
183
 
168
184
  ##
@@ -438,9 +454,9 @@ module Google
438
454
  # end
439
455
  #
440
456
  # @!attribute [rw] endpoint
441
- # The hostname or hostname:port of the service endpoint.
442
- # Defaults to `"dialogflow.googleapis.com"`.
443
- # @return [::String]
457
+ # A custom service endpoint, as a hostname or hostname:port. The default is
458
+ # nil, indicating to use the default endpoint in the current universe domain.
459
+ # @return [::String,nil]
444
460
  # @!attribute [rw] credentials
445
461
  # Credentials to send with calls. You may provide any of the following types:
446
462
  # * (`String`) The path to a service account key file in JSON format
@@ -486,13 +502,20 @@ module Google
486
502
  # @!attribute [rw] quota_project
487
503
  # A separate project against which to charge quota.
488
504
  # @return [::String]
505
+ # @!attribute [rw] universe_domain
506
+ # The universe domain within which to make requests. This determines the
507
+ # default endpoint URL. The default value of nil uses the environment
508
+ # universe (usually the default "googleapis.com" universe).
509
+ # @return [::String,nil]
489
510
  #
490
511
  class Configuration
491
512
  extend ::Gapic::Config
492
513
 
514
+ # @private
515
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
493
516
  DEFAULT_ENDPOINT = "dialogflow.googleapis.com"
494
517
 
495
- config_attr :endpoint, DEFAULT_ENDPOINT, ::String
518
+ config_attr :endpoint, nil, ::String, nil
496
519
  config_attr :credentials, nil do |value|
497
520
  allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
498
521
  allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
@@ -507,6 +530,7 @@ module Google
507
530
  config_attr :metadata, nil, ::Hash, nil
508
531
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
509
532
  config_attr :quota_project, nil, ::String, nil
533
+ config_attr :universe_domain, nil, ::String, nil
510
534
 
511
535
  # @private
512
536
  def initialize parent_config = nil
@@ -36,6 +36,9 @@ module Google
36
36
  # guide](https://cloud.google.com/dialogflow/docs/api-overview).
37
37
  #
38
38
  class Client
39
+ # @private
40
+ DEFAULT_ENDPOINT_TEMPLATE = "dialogflow.$UNIVERSE_DOMAIN$"
41
+
39
42
  include Paths
40
43
 
41
44
  # @private
@@ -106,6 +109,15 @@ module Google
106
109
  @config
107
110
  end
108
111
 
112
+ ##
113
+ # The effective universe domain
114
+ #
115
+ # @return [String]
116
+ #
117
+ def universe_domain
118
+ @sessions_stub.universe_domain
119
+ end
120
+
109
121
  ##
110
122
  # Create a new Sessions REST client object.
111
123
  #
@@ -133,8 +145,9 @@ module Google
133
145
  credentials = @config.credentials
134
146
  # Use self-signed JWT if the endpoint is unchanged from default,
135
147
  # but only if the default endpoint does not have a region prefix.
136
- enable_self_signed_jwt = @config.endpoint == Configuration::DEFAULT_ENDPOINT &&
137
- !@config.endpoint.split(".").first.include?("-")
148
+ enable_self_signed_jwt = @config.endpoint.nil? ||
149
+ (@config.endpoint == Configuration::DEFAULT_ENDPOINT &&
150
+ !@config.endpoint.split(".").first.include?("-"))
138
151
  credentials ||= Credentials.default scope: @config.scope,
139
152
  enable_self_signed_jwt: enable_self_signed_jwt
140
153
  if credentials.is_a?(::String) || credentials.is_a?(::Hash)
@@ -144,14 +157,20 @@ module Google
144
157
  @quota_project_id = @config.quota_project
145
158
  @quota_project_id ||= credentials.quota_project_id if credentials.respond_to? :quota_project_id
146
159
 
160
+ @sessions_stub = ::Google::Cloud::Dialogflow::V2::Sessions::Rest::ServiceStub.new(
161
+ endpoint: @config.endpoint,
162
+ endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
163
+ universe_domain: @config.universe_domain,
164
+ credentials: credentials
165
+ )
166
+
147
167
  @location_client = Google::Cloud::Location::Locations::Rest::Client.new do |config|
148
168
  config.credentials = credentials
149
169
  config.quota_project = @quota_project_id
150
- config.endpoint = @config.endpoint
170
+ config.endpoint = @sessions_stub.endpoint
171
+ config.universe_domain = @sessions_stub.universe_domain
151
172
  config.bindings_override = @config.bindings_override
152
173
  end
153
-
154
- @sessions_stub = ::Google::Cloud::Dialogflow::V2::Sessions::Rest::ServiceStub.new endpoint: @config.endpoint, credentials: credentials
155
174
  end
156
175
 
157
176
  ##
@@ -329,9 +348,9 @@ module Google
329
348
  # end
330
349
  #
331
350
  # @!attribute [rw] endpoint
332
- # The hostname or hostname:port of the service endpoint.
333
- # Defaults to `"dialogflow.googleapis.com"`.
334
- # @return [::String]
351
+ # A custom service endpoint, as a hostname or hostname:port. The default is
352
+ # nil, indicating to use the default endpoint in the current universe domain.
353
+ # @return [::String,nil]
335
354
  # @!attribute [rw] credentials
336
355
  # Credentials to send with calls. You may provide any of the following types:
337
356
  # * (`String`) The path to a service account key file in JSON format
@@ -368,13 +387,20 @@ module Google
368
387
  # @!attribute [rw] quota_project
369
388
  # A separate project against which to charge quota.
370
389
  # @return [::String]
390
+ # @!attribute [rw] universe_domain
391
+ # The universe domain within which to make requests. This determines the
392
+ # default endpoint URL. The default value of nil uses the environment
393
+ # universe (usually the default "googleapis.com" universe).
394
+ # @return [::String,nil]
371
395
  #
372
396
  class Configuration
373
397
  extend ::Gapic::Config
374
398
 
399
+ # @private
400
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
375
401
  DEFAULT_ENDPOINT = "dialogflow.googleapis.com"
376
402
 
377
- config_attr :endpoint, DEFAULT_ENDPOINT, ::String
403
+ config_attr :endpoint, nil, ::String, nil
378
404
  config_attr :credentials, nil do |value|
379
405
  allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
380
406
  allowed.any? { |klass| klass === value }
@@ -386,6 +412,7 @@ module Google
386
412
  config_attr :metadata, nil, ::Hash, nil
387
413
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
388
414
  config_attr :quota_project, nil, ::String, nil
415
+ config_attr :universe_domain, nil, ::String, nil
389
416
 
390
417
  # @private
391
418
  # Overrides for http bindings for the RPCs of this service
@@ -30,16 +30,37 @@ 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
+
55
+ ##
56
+ # The effective endpoint
57
+ #
58
+ # @return [String]
59
+ #
60
+ def endpoint
61
+ @client_stub.endpoint
62
+ end
63
+
43
64
  ##
44
65
  # Baseline implementation for the detect_intent REST call
45
66
  #
@@ -21,7 +21,7 @@ module Google
21
21
  module Cloud
22
22
  module Dialogflow
23
23
  module V2
24
- VERSION = "0.31.0"
24
+ VERSION = "0.32.1"
25
25
  end
26
26
  end
27
27
  end