google-cloud-managed_kafka-schema_registry-v1 0.a → 0.1.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.
- checksums.yaml +4 -4
- data/.yardopts +12 -0
- data/AUTHENTICATION.md +122 -0
- data/README.md +153 -8
- data/lib/google/cloud/managed_kafka/schema_registry/v1/bindings_override.rb +77 -0
- data/lib/google/cloud/managed_kafka/schema_registry/v1/managed_schema_registry/client.rb +3110 -0
- data/lib/google/cloud/managed_kafka/schema_registry/v1/managed_schema_registry/credentials.rb +49 -0
- data/lib/google/cloud/managed_kafka/schema_registry/v1/managed_schema_registry/paths.rb +424 -0
- data/lib/google/cloud/managed_kafka/schema_registry/v1/managed_schema_registry/rest/client.rb +2903 -0
- data/lib/google/cloud/managed_kafka/schema_registry/v1/managed_schema_registry/rest/service_stub.rb +1888 -0
- data/lib/google/cloud/managed_kafka/schema_registry/v1/managed_schema_registry/rest.rb +103 -0
- data/lib/google/cloud/managed_kafka/schema_registry/v1/managed_schema_registry.rb +105 -0
- data/lib/google/cloud/managed_kafka/schema_registry/v1/rest.rb +40 -0
- data/lib/google/cloud/managed_kafka/schema_registry/v1/version.rb +7 -2
- data/lib/google/cloud/managed_kafka/schema_registry/v1.rb +47 -0
- data/lib/google/cloud/managedkafka/schemaregistry/v1/schema_registry_pb.rb +80 -0
- data/lib/google/cloud/managedkafka/schemaregistry/v1/schema_registry_resources_pb.rb +57 -0
- data/lib/google/cloud/managedkafka/schemaregistry/v1/schema_registry_services_pb.rb +160 -0
- data/lib/google-cloud-managed_kafka-schema_registry-v1.rb +21 -0
- data/proto_docs/README.md +4 -0
- data/proto_docs/google/api/client.rb +473 -0
- data/proto_docs/google/api/field_behavior.rb +85 -0
- data/proto_docs/google/api/httpbody.rb +80 -0
- data/proto_docs/google/api/launch_stage.rb +71 -0
- data/proto_docs/google/api/resource.rb +227 -0
- data/proto_docs/google/cloud/managedkafka/schemaregistry/v1/schema_registry.rb +488 -0
- data/proto_docs/google/cloud/managedkafka/schemaregistry/v1/schema_registry_resources.rb +236 -0
- data/proto_docs/google/protobuf/any.rb +145 -0
- data/proto_docs/google/protobuf/duration.rb +98 -0
- data/proto_docs/google/protobuf/empty.rb +34 -0
- metadata +77 -9
@@ -0,0 +1,49 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Copyright 2025 Google LLC
|
4
|
+
#
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
+
# you may not use this file except in compliance with the License.
|
7
|
+
# You may obtain a copy of the License at
|
8
|
+
#
|
9
|
+
# https://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
#
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
# See the License for the specific language governing permissions and
|
15
|
+
# limitations under the License.
|
16
|
+
|
17
|
+
# Auto-generated by gapic-generator-ruby. DO NOT EDIT!
|
18
|
+
|
19
|
+
require "googleauth"
|
20
|
+
|
21
|
+
module Google
|
22
|
+
module Cloud
|
23
|
+
module ManagedKafka
|
24
|
+
module SchemaRegistry
|
25
|
+
module V1
|
26
|
+
module ManagedSchemaRegistry
|
27
|
+
# Credentials for the ManagedSchemaRegistry API.
|
28
|
+
class Credentials < ::Google::Auth::Credentials
|
29
|
+
self.scope = [
|
30
|
+
"https://www.googleapis.com/auth/cloud-platform"
|
31
|
+
]
|
32
|
+
self.env_vars = [
|
33
|
+
"GOOGLE_CLOUD_CREDENTIALS",
|
34
|
+
"GOOGLE_CLOUD_KEYFILE",
|
35
|
+
"GCLOUD_KEYFILE",
|
36
|
+
"GOOGLE_CLOUD_CREDENTIALS_JSON",
|
37
|
+
"GOOGLE_CLOUD_KEYFILE_JSON",
|
38
|
+
"GCLOUD_KEYFILE_JSON"
|
39
|
+
]
|
40
|
+
self.paths = [
|
41
|
+
"~/.config/google_cloud/application_default_credentials.json"
|
42
|
+
]
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
@@ -0,0 +1,424 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Copyright 2025 Google LLC
|
4
|
+
#
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
+
# you may not use this file except in compliance with the License.
|
7
|
+
# You may obtain a copy of the License at
|
8
|
+
#
|
9
|
+
# https://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
#
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
# See the License for the specific language governing permissions and
|
15
|
+
# limitations under the License.
|
16
|
+
|
17
|
+
# Auto-generated by gapic-generator-ruby. DO NOT EDIT!
|
18
|
+
|
19
|
+
|
20
|
+
module Google
|
21
|
+
module Cloud
|
22
|
+
module ManagedKafka
|
23
|
+
module SchemaRegistry
|
24
|
+
module V1
|
25
|
+
module ManagedSchemaRegistry
|
26
|
+
# Path helper methods for the ManagedSchemaRegistry API.
|
27
|
+
module Paths
|
28
|
+
##
|
29
|
+
# Create a fully-qualified Schema resource string.
|
30
|
+
#
|
31
|
+
# @overload schema_path(project:, location:, schema_registry:, schema:)
|
32
|
+
# The resource will be in the following format:
|
33
|
+
#
|
34
|
+
# `projects/{project}/locations/{location}/schemaRegistries/{schema_registry}/schemas/ids/{schema}`
|
35
|
+
#
|
36
|
+
# @param project [String]
|
37
|
+
# @param location [String]
|
38
|
+
# @param schema_registry [String]
|
39
|
+
# @param schema [String]
|
40
|
+
#
|
41
|
+
# @overload schema_path(project:, location:, schema_registry:, context:, schema:)
|
42
|
+
# The resource will be in the following format:
|
43
|
+
#
|
44
|
+
# `projects/{project}/locations/{location}/schemaRegistries/{schema_registry}/contexts/{context}/schemas/ids/{schema}`
|
45
|
+
#
|
46
|
+
# @param project [String]
|
47
|
+
# @param location [String]
|
48
|
+
# @param schema_registry [String]
|
49
|
+
# @param context [String]
|
50
|
+
# @param schema [String]
|
51
|
+
#
|
52
|
+
# @return [::String]
|
53
|
+
def schema_path **args
|
54
|
+
resources = {
|
55
|
+
"location:project:schema:schema_registry" => (proc do |project:, location:, schema_registry:, schema:|
|
56
|
+
raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/"
|
57
|
+
raise ::ArgumentError, "location cannot contain /" if location.to_s.include? "/"
|
58
|
+
raise ::ArgumentError, "schema_registry cannot contain /" if schema_registry.to_s.include? "/"
|
59
|
+
|
60
|
+
"projects/#{project}/locations/#{location}/schemaRegistries/#{schema_registry}/schemas/ids/#{schema}"
|
61
|
+
end),
|
62
|
+
"context:location:project:schema:schema_registry" => (proc do |project:, location:, schema_registry:, context:, schema:|
|
63
|
+
raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/"
|
64
|
+
raise ::ArgumentError, "location cannot contain /" if location.to_s.include? "/"
|
65
|
+
raise ::ArgumentError, "schema_registry cannot contain /" if schema_registry.to_s.include? "/"
|
66
|
+
raise ::ArgumentError, "context cannot contain /" if context.to_s.include? "/"
|
67
|
+
|
68
|
+
"projects/#{project}/locations/#{location}/schemaRegistries/#{schema_registry}/contexts/#{context}/schemas/ids/#{schema}"
|
69
|
+
end)
|
70
|
+
}
|
71
|
+
|
72
|
+
resource = resources[args.keys.sort.join(":")]
|
73
|
+
raise ::ArgumentError, "no resource found for values #{args.keys}" if resource.nil?
|
74
|
+
resource.call(**args)
|
75
|
+
end
|
76
|
+
|
77
|
+
##
|
78
|
+
# Create a fully-qualified SchemaConfig resource string.
|
79
|
+
#
|
80
|
+
# @overload schema_config_path(project:, location:, schema_registry:)
|
81
|
+
# The resource will be in the following format:
|
82
|
+
#
|
83
|
+
# `projects/{project}/locations/{location}/schemaRegistries/{schema_registry}/config`
|
84
|
+
#
|
85
|
+
# @param project [String]
|
86
|
+
# @param location [String]
|
87
|
+
# @param schema_registry [String]
|
88
|
+
#
|
89
|
+
# @overload schema_config_path(project:, location:, schema_registry:, subject:)
|
90
|
+
# The resource will be in the following format:
|
91
|
+
#
|
92
|
+
# `projects/{project}/locations/{location}/schemaRegistries/{schema_registry}/config/{subject}`
|
93
|
+
#
|
94
|
+
# @param project [String]
|
95
|
+
# @param location [String]
|
96
|
+
# @param schema_registry [String]
|
97
|
+
# @param subject [String]
|
98
|
+
#
|
99
|
+
# @overload schema_config_path(project:, location:, schema_registry:, context:)
|
100
|
+
# The resource will be in the following format:
|
101
|
+
#
|
102
|
+
# `projects/{project}/locations/{location}/schemaRegistries/{schema_registry}/contexts/{context}/config`
|
103
|
+
#
|
104
|
+
# @param project [String]
|
105
|
+
# @param location [String]
|
106
|
+
# @param schema_registry [String]
|
107
|
+
# @param context [String]
|
108
|
+
#
|
109
|
+
# @overload schema_config_path(project:, location:, schema_registry:, context:, subject:)
|
110
|
+
# The resource will be in the following format:
|
111
|
+
#
|
112
|
+
# `projects/{project}/locations/{location}/schemaRegistries/{schema_registry}/contexts/{context}/config/{subject}`
|
113
|
+
#
|
114
|
+
# @param project [String]
|
115
|
+
# @param location [String]
|
116
|
+
# @param schema_registry [String]
|
117
|
+
# @param context [String]
|
118
|
+
# @param subject [String]
|
119
|
+
#
|
120
|
+
# @return [::String]
|
121
|
+
def schema_config_path **args
|
122
|
+
resources = {
|
123
|
+
"location:project:schema_registry" => (proc do |project:, location:, schema_registry:|
|
124
|
+
raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/"
|
125
|
+
raise ::ArgumentError, "location cannot contain /" if location.to_s.include? "/"
|
126
|
+
|
127
|
+
"projects/#{project}/locations/#{location}/schemaRegistries/#{schema_registry}/config"
|
128
|
+
end),
|
129
|
+
"location:project:schema_registry:subject" => (proc do |project:, location:, schema_registry:, subject:|
|
130
|
+
raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/"
|
131
|
+
raise ::ArgumentError, "location cannot contain /" if location.to_s.include? "/"
|
132
|
+
raise ::ArgumentError, "schema_registry cannot contain /" if schema_registry.to_s.include? "/"
|
133
|
+
|
134
|
+
"projects/#{project}/locations/#{location}/schemaRegistries/#{schema_registry}/config/#{subject}"
|
135
|
+
end),
|
136
|
+
"context:location:project:schema_registry" => (proc do |project:, location:, schema_registry:, context:|
|
137
|
+
raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/"
|
138
|
+
raise ::ArgumentError, "location cannot contain /" if location.to_s.include? "/"
|
139
|
+
raise ::ArgumentError, "schema_registry cannot contain /" if schema_registry.to_s.include? "/"
|
140
|
+
|
141
|
+
"projects/#{project}/locations/#{location}/schemaRegistries/#{schema_registry}/contexts/#{context}/config"
|
142
|
+
end),
|
143
|
+
"context:location:project:schema_registry:subject" => (proc do |project:, location:, schema_registry:, context:, subject:|
|
144
|
+
raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/"
|
145
|
+
raise ::ArgumentError, "location cannot contain /" if location.to_s.include? "/"
|
146
|
+
raise ::ArgumentError, "schema_registry cannot contain /" if schema_registry.to_s.include? "/"
|
147
|
+
raise ::ArgumentError, "context cannot contain /" if context.to_s.include? "/"
|
148
|
+
|
149
|
+
"projects/#{project}/locations/#{location}/schemaRegistries/#{schema_registry}/contexts/#{context}/config/#{subject}"
|
150
|
+
end)
|
151
|
+
}
|
152
|
+
|
153
|
+
resource = resources[args.keys.sort.join(":")]
|
154
|
+
raise ::ArgumentError, "no resource found for values #{args.keys}" if resource.nil?
|
155
|
+
resource.call(**args)
|
156
|
+
end
|
157
|
+
|
158
|
+
##
|
159
|
+
# Create a fully-qualified SchemaContext resource string.
|
160
|
+
#
|
161
|
+
# The resource will be in the following format:
|
162
|
+
#
|
163
|
+
# `projects/{project}/locations/{location}/schemaRegistries/{schema_registry}/contexts/{context}`
|
164
|
+
#
|
165
|
+
# @param project [String]
|
166
|
+
# @param location [String]
|
167
|
+
# @param schema_registry [String]
|
168
|
+
# @param context [String]
|
169
|
+
#
|
170
|
+
# @return [::String]
|
171
|
+
def schema_context_path project:, location:, schema_registry:, context:
|
172
|
+
raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/"
|
173
|
+
raise ::ArgumentError, "location cannot contain /" if location.to_s.include? "/"
|
174
|
+
raise ::ArgumentError, "schema_registry cannot contain /" if schema_registry.to_s.include? "/"
|
175
|
+
|
176
|
+
"projects/#{project}/locations/#{location}/schemaRegistries/#{schema_registry}/contexts/#{context}"
|
177
|
+
end
|
178
|
+
|
179
|
+
##
|
180
|
+
# Create a fully-qualified SchemaMode resource string.
|
181
|
+
#
|
182
|
+
# @overload schema_mode_path(project:, location:, schema_registry:)
|
183
|
+
# The resource will be in the following format:
|
184
|
+
#
|
185
|
+
# `projects/{project}/locations/{location}/schemaRegistries/{schema_registry}/mode`
|
186
|
+
#
|
187
|
+
# @param project [String]
|
188
|
+
# @param location [String]
|
189
|
+
# @param schema_registry [String]
|
190
|
+
#
|
191
|
+
# @overload schema_mode_path(project:, location:, schema_registry:, subject:)
|
192
|
+
# The resource will be in the following format:
|
193
|
+
#
|
194
|
+
# `projects/{project}/locations/{location}/schemaRegistries/{schema_registry}/mode/{subject}`
|
195
|
+
#
|
196
|
+
# @param project [String]
|
197
|
+
# @param location [String]
|
198
|
+
# @param schema_registry [String]
|
199
|
+
# @param subject [String]
|
200
|
+
#
|
201
|
+
# @overload schema_mode_path(project:, location:, schema_registry:, context:)
|
202
|
+
# The resource will be in the following format:
|
203
|
+
#
|
204
|
+
# `projects/{project}/locations/{location}/schemaRegistries/{schema_registry}/contexts/{context}/mode`
|
205
|
+
#
|
206
|
+
# @param project [String]
|
207
|
+
# @param location [String]
|
208
|
+
# @param schema_registry [String]
|
209
|
+
# @param context [String]
|
210
|
+
#
|
211
|
+
# @overload schema_mode_path(project:, location:, schema_registry:, context:, subject:)
|
212
|
+
# The resource will be in the following format:
|
213
|
+
#
|
214
|
+
# `projects/{project}/locations/{location}/schemaRegistries/{schema_registry}/contexts/{context}/mode/{subject}`
|
215
|
+
#
|
216
|
+
# @param project [String]
|
217
|
+
# @param location [String]
|
218
|
+
# @param schema_registry [String]
|
219
|
+
# @param context [String]
|
220
|
+
# @param subject [String]
|
221
|
+
#
|
222
|
+
# @return [::String]
|
223
|
+
def schema_mode_path **args
|
224
|
+
resources = {
|
225
|
+
"location:project:schema_registry" => (proc do |project:, location:, schema_registry:|
|
226
|
+
raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/"
|
227
|
+
raise ::ArgumentError, "location cannot contain /" if location.to_s.include? "/"
|
228
|
+
|
229
|
+
"projects/#{project}/locations/#{location}/schemaRegistries/#{schema_registry}/mode"
|
230
|
+
end),
|
231
|
+
"location:project:schema_registry:subject" => (proc do |project:, location:, schema_registry:, subject:|
|
232
|
+
raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/"
|
233
|
+
raise ::ArgumentError, "location cannot contain /" if location.to_s.include? "/"
|
234
|
+
raise ::ArgumentError, "schema_registry cannot contain /" if schema_registry.to_s.include? "/"
|
235
|
+
|
236
|
+
"projects/#{project}/locations/#{location}/schemaRegistries/#{schema_registry}/mode/#{subject}"
|
237
|
+
end),
|
238
|
+
"context:location:project:schema_registry" => (proc do |project:, location:, schema_registry:, context:|
|
239
|
+
raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/"
|
240
|
+
raise ::ArgumentError, "location cannot contain /" if location.to_s.include? "/"
|
241
|
+
raise ::ArgumentError, "schema_registry cannot contain /" if schema_registry.to_s.include? "/"
|
242
|
+
|
243
|
+
"projects/#{project}/locations/#{location}/schemaRegistries/#{schema_registry}/contexts/#{context}/mode"
|
244
|
+
end),
|
245
|
+
"context:location:project:schema_registry:subject" => (proc do |project:, location:, schema_registry:, context:, subject:|
|
246
|
+
raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/"
|
247
|
+
raise ::ArgumentError, "location cannot contain /" if location.to_s.include? "/"
|
248
|
+
raise ::ArgumentError, "schema_registry cannot contain /" if schema_registry.to_s.include? "/"
|
249
|
+
raise ::ArgumentError, "context cannot contain /" if context.to_s.include? "/"
|
250
|
+
|
251
|
+
"projects/#{project}/locations/#{location}/schemaRegistries/#{schema_registry}/contexts/#{context}/mode/#{subject}"
|
252
|
+
end)
|
253
|
+
}
|
254
|
+
|
255
|
+
resource = resources[args.keys.sort.join(":")]
|
256
|
+
raise ::ArgumentError, "no resource found for values #{args.keys}" if resource.nil?
|
257
|
+
resource.call(**args)
|
258
|
+
end
|
259
|
+
|
260
|
+
##
|
261
|
+
# Create a fully-qualified SchemaRegistry resource string.
|
262
|
+
#
|
263
|
+
# The resource will be in the following format:
|
264
|
+
#
|
265
|
+
# `projects/{project}/locations/{location}/schemaRegistries/{schema_registry}`
|
266
|
+
#
|
267
|
+
# @param project [String]
|
268
|
+
# @param location [String]
|
269
|
+
# @param schema_registry [String]
|
270
|
+
#
|
271
|
+
# @return [::String]
|
272
|
+
def schema_registry_path project:, location:, schema_registry:
|
273
|
+
raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/"
|
274
|
+
raise ::ArgumentError, "location cannot contain /" if location.to_s.include? "/"
|
275
|
+
|
276
|
+
"projects/#{project}/locations/#{location}/schemaRegistries/#{schema_registry}"
|
277
|
+
end
|
278
|
+
|
279
|
+
##
|
280
|
+
# Create a fully-qualified SchemaSubject resource string.
|
281
|
+
#
|
282
|
+
# @overload schema_subject_path(project:, location:, schema_registry:, subject:)
|
283
|
+
# The resource will be in the following format:
|
284
|
+
#
|
285
|
+
# `projects/{project}/locations/{location}/schemaRegistries/{schema_registry}/subjects/{subject}`
|
286
|
+
#
|
287
|
+
# @param project [String]
|
288
|
+
# @param location [String]
|
289
|
+
# @param schema_registry [String]
|
290
|
+
# @param subject [String]
|
291
|
+
#
|
292
|
+
# @overload schema_subject_path(project:, location:, schema_registry:, context:, subject:)
|
293
|
+
# The resource will be in the following format:
|
294
|
+
#
|
295
|
+
# `projects/{project}/locations/{location}/schemaRegistries/{schema_registry}/contexts/{context}/subjects/{subject}`
|
296
|
+
#
|
297
|
+
# @param project [String]
|
298
|
+
# @param location [String]
|
299
|
+
# @param schema_registry [String]
|
300
|
+
# @param context [String]
|
301
|
+
# @param subject [String]
|
302
|
+
#
|
303
|
+
# @return [::String]
|
304
|
+
def schema_subject_path **args
|
305
|
+
resources = {
|
306
|
+
"location:project:schema_registry:subject" => (proc do |project:, location:, schema_registry:, subject:|
|
307
|
+
raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/"
|
308
|
+
raise ::ArgumentError, "location cannot contain /" if location.to_s.include? "/"
|
309
|
+
raise ::ArgumentError, "schema_registry cannot contain /" if schema_registry.to_s.include? "/"
|
310
|
+
|
311
|
+
"projects/#{project}/locations/#{location}/schemaRegistries/#{schema_registry}/subjects/#{subject}"
|
312
|
+
end),
|
313
|
+
"context:location:project:schema_registry:subject" => (proc do |project:, location:, schema_registry:, context:, subject:|
|
314
|
+
raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/"
|
315
|
+
raise ::ArgumentError, "location cannot contain /" if location.to_s.include? "/"
|
316
|
+
raise ::ArgumentError, "schema_registry cannot contain /" if schema_registry.to_s.include? "/"
|
317
|
+
raise ::ArgumentError, "context cannot contain /" if context.to_s.include? "/"
|
318
|
+
|
319
|
+
"projects/#{project}/locations/#{location}/schemaRegistries/#{schema_registry}/contexts/#{context}/subjects/#{subject}"
|
320
|
+
end)
|
321
|
+
}
|
322
|
+
|
323
|
+
resource = resources[args.keys.sort.join(":")]
|
324
|
+
raise ::ArgumentError, "no resource found for values #{args.keys}" if resource.nil?
|
325
|
+
resource.call(**args)
|
326
|
+
end
|
327
|
+
|
328
|
+
##
|
329
|
+
# Create a fully-qualified SchemaVersion resource string.
|
330
|
+
#
|
331
|
+
# @overload schema_version_path(project:, location:, schema_registry:, subject:, version:)
|
332
|
+
# The resource will be in the following format:
|
333
|
+
#
|
334
|
+
# `projects/{project}/locations/{location}/schemaRegistries/{schema_registry}/subjects/{subject}/versions/{version}`
|
335
|
+
#
|
336
|
+
# @param project [String]
|
337
|
+
# @param location [String]
|
338
|
+
# @param schema_registry [String]
|
339
|
+
# @param subject [String]
|
340
|
+
# @param version [String]
|
341
|
+
#
|
342
|
+
# @overload schema_version_path(project:, location:, schema_registry:, context:, subject:, version:)
|
343
|
+
# The resource will be in the following format:
|
344
|
+
#
|
345
|
+
# `projects/{project}/locations/{location}/schemaRegistries/{schema_registry}/contexts/{context}/subjects/{subject}/versions/{version}`
|
346
|
+
#
|
347
|
+
# @param project [String]
|
348
|
+
# @param location [String]
|
349
|
+
# @param schema_registry [String]
|
350
|
+
# @param context [String]
|
351
|
+
# @param subject [String]
|
352
|
+
# @param version [String]
|
353
|
+
#
|
354
|
+
# @overload schema_version_path(project:, location:, schema_registry:, subject:)
|
355
|
+
# The resource will be in the following format:
|
356
|
+
#
|
357
|
+
# `projects/{project}/locations/{location}/schemaRegistries/{schema_registry}/compatibility/subjects/{subject}/versions`
|
358
|
+
#
|
359
|
+
# @param project [String]
|
360
|
+
# @param location [String]
|
361
|
+
# @param schema_registry [String]
|
362
|
+
# @param subject [String]
|
363
|
+
#
|
364
|
+
# @overload schema_version_path(project:, location:, schema_registry:, context:, subject:)
|
365
|
+
# The resource will be in the following format:
|
366
|
+
#
|
367
|
+
# `projects/{project}/locations/{location}/schemaRegistries/{schema_registry}/contexts/{context}/compatibility/subjects/{subject}/versions`
|
368
|
+
#
|
369
|
+
# @param project [String]
|
370
|
+
# @param location [String]
|
371
|
+
# @param schema_registry [String]
|
372
|
+
# @param context [String]
|
373
|
+
# @param subject [String]
|
374
|
+
#
|
375
|
+
# @return [::String]
|
376
|
+
def schema_version_path **args
|
377
|
+
resources = {
|
378
|
+
"location:project:schema_registry:subject:version" => (proc do |project:, location:, schema_registry:, subject:, version:|
|
379
|
+
raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/"
|
380
|
+
raise ::ArgumentError, "location cannot contain /" if location.to_s.include? "/"
|
381
|
+
raise ::ArgumentError, "schema_registry cannot contain /" if schema_registry.to_s.include? "/"
|
382
|
+
raise ::ArgumentError, "subject cannot contain /" if subject.to_s.include? "/"
|
383
|
+
|
384
|
+
"projects/#{project}/locations/#{location}/schemaRegistries/#{schema_registry}/subjects/#{subject}/versions/#{version}"
|
385
|
+
end),
|
386
|
+
"context:location:project:schema_registry:subject:version" => (proc do |project:, location:, schema_registry:, context:, subject:, version:|
|
387
|
+
raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/"
|
388
|
+
raise ::ArgumentError, "location cannot contain /" if location.to_s.include? "/"
|
389
|
+
raise ::ArgumentError, "schema_registry cannot contain /" if schema_registry.to_s.include? "/"
|
390
|
+
raise ::ArgumentError, "context cannot contain /" if context.to_s.include? "/"
|
391
|
+
raise ::ArgumentError, "subject cannot contain /" if subject.to_s.include? "/"
|
392
|
+
|
393
|
+
"projects/#{project}/locations/#{location}/schemaRegistries/#{schema_registry}/contexts/#{context}/subjects/#{subject}/versions/#{version}"
|
394
|
+
end),
|
395
|
+
"location:project:schema_registry:subject" => (proc do |project:, location:, schema_registry:, subject:|
|
396
|
+
raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/"
|
397
|
+
raise ::ArgumentError, "location cannot contain /" if location.to_s.include? "/"
|
398
|
+
raise ::ArgumentError, "schema_registry cannot contain /" if schema_registry.to_s.include? "/"
|
399
|
+
|
400
|
+
"projects/#{project}/locations/#{location}/schemaRegistries/#{schema_registry}/compatibility/subjects/#{subject}/versions"
|
401
|
+
end),
|
402
|
+
"context:location:project:schema_registry:subject" => (proc do |project:, location:, schema_registry:, context:, subject:|
|
403
|
+
raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/"
|
404
|
+
raise ::ArgumentError, "location cannot contain /" if location.to_s.include? "/"
|
405
|
+
raise ::ArgumentError, "schema_registry cannot contain /" if schema_registry.to_s.include? "/"
|
406
|
+
raise ::ArgumentError, "context cannot contain /" if context.to_s.include? "/"
|
407
|
+
|
408
|
+
"projects/#{project}/locations/#{location}/schemaRegistries/#{schema_registry}/contexts/#{context}/compatibility/subjects/#{subject}/versions"
|
409
|
+
end)
|
410
|
+
}
|
411
|
+
|
412
|
+
resource = resources[args.keys.sort.join(":")]
|
413
|
+
raise ::ArgumentError, "no resource found for values #{args.keys}" if resource.nil?
|
414
|
+
resource.call(**args)
|
415
|
+
end
|
416
|
+
|
417
|
+
extend self
|
418
|
+
end
|
419
|
+
end
|
420
|
+
end
|
421
|
+
end
|
422
|
+
end
|
423
|
+
end
|
424
|
+
end
|