google-apis-managedkafka_v1 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.
@@ -0,0 +1,833 @@
1
+ # Copyright 2020 Google LLC
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'google/apis/core/base_service'
16
+ require 'google/apis/core/json_representation'
17
+ require 'google/apis/core/hashable'
18
+ require 'google/apis/errors'
19
+
20
+ module Google
21
+ module Apis
22
+ module ManagedkafkaV1
23
+ # Managed Service for Apache Kafka API
24
+ #
25
+ # Manage Apache Kafka clusters and resources.
26
+ #
27
+ # @example
28
+ # require 'google/apis/managedkafka_v1'
29
+ #
30
+ # Managedkafka = Google::Apis::ManagedkafkaV1 # Alias the module
31
+ # service = Managedkafka::ManagedKafkaService.new
32
+ #
33
+ # @see https://cloud.google.com/managed-service-for-apache-kafka/docs
34
+ class ManagedKafkaService < Google::Apis::Core::BaseService
35
+ DEFAULT_ENDPOINT_TEMPLATE = "https://managedkafka.$UNIVERSE_DOMAIN$/"
36
+
37
+ # @return [String]
38
+ # API key. Your API key identifies your project and provides you with API access,
39
+ # quota, and reports. Required unless you provide an OAuth 2.0 token.
40
+ attr_accessor :key
41
+
42
+ # @return [String]
43
+ # Available to use for quota purposes for server-side applications. Can be any
44
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
45
+ attr_accessor :quota_user
46
+
47
+ def initialize
48
+ super(DEFAULT_ENDPOINT_TEMPLATE, '',
49
+ client_name: 'google-apis-managedkafka_v1',
50
+ client_version: Google::Apis::ManagedkafkaV1::GEM_VERSION)
51
+ @batch_path = 'batch'
52
+ end
53
+
54
+ # Gets information about a location.
55
+ # @param [String] name
56
+ # Resource name for the location.
57
+ # @param [String] fields
58
+ # Selector specifying which fields to include in a partial response.
59
+ # @param [String] quota_user
60
+ # Available to use for quota purposes for server-side applications. Can be any
61
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
62
+ # @param [Google::Apis::RequestOptions] options
63
+ # Request-specific options
64
+ #
65
+ # @yield [result, err] Result & error if block supplied
66
+ # @yieldparam result [Google::Apis::ManagedkafkaV1::Location] parsed result object
67
+ # @yieldparam err [StandardError] error object if request failed
68
+ #
69
+ # @return [Google::Apis::ManagedkafkaV1::Location]
70
+ #
71
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
72
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
73
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
74
+ def get_project_location(name, fields: nil, quota_user: nil, options: nil, &block)
75
+ command = make_simple_command(:get, 'v1/{+name}', options)
76
+ command.response_representation = Google::Apis::ManagedkafkaV1::Location::Representation
77
+ command.response_class = Google::Apis::ManagedkafkaV1::Location
78
+ command.params['name'] = name unless name.nil?
79
+ command.query['fields'] = fields unless fields.nil?
80
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
81
+ execute_or_queue_command(command, &block)
82
+ end
83
+
84
+ # Lists information about the supported locations for this service.
85
+ # @param [String] name
86
+ # The resource that owns the locations collection, if applicable.
87
+ # @param [String] filter
88
+ # A filter to narrow down results to a preferred subset. The filtering language
89
+ # accepts strings like `"displayName=tokyo"`, and is documented in more detail
90
+ # in [AIP-160](https://google.aip.dev/160).
91
+ # @param [Fixnum] page_size
92
+ # The maximum number of results to return. If not set, the service selects a
93
+ # default.
94
+ # @param [String] page_token
95
+ # A page token received from the `next_page_token` field in the response. Send
96
+ # that page token to receive the subsequent page.
97
+ # @param [String] fields
98
+ # Selector specifying which fields to include in a partial response.
99
+ # @param [String] quota_user
100
+ # Available to use for quota purposes for server-side applications. Can be any
101
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
102
+ # @param [Google::Apis::RequestOptions] options
103
+ # Request-specific options
104
+ #
105
+ # @yield [result, err] Result & error if block supplied
106
+ # @yieldparam result [Google::Apis::ManagedkafkaV1::ListLocationsResponse] parsed result object
107
+ # @yieldparam err [StandardError] error object if request failed
108
+ #
109
+ # @return [Google::Apis::ManagedkafkaV1::ListLocationsResponse]
110
+ #
111
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
112
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
113
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
114
+ def list_project_locations(name, filter: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
115
+ command = make_simple_command(:get, 'v1/{+name}/locations', options)
116
+ command.response_representation = Google::Apis::ManagedkafkaV1::ListLocationsResponse::Representation
117
+ command.response_class = Google::Apis::ManagedkafkaV1::ListLocationsResponse
118
+ command.params['name'] = name unless name.nil?
119
+ command.query['filter'] = filter unless filter.nil?
120
+ command.query['pageSize'] = page_size unless page_size.nil?
121
+ command.query['pageToken'] = page_token unless page_token.nil?
122
+ command.query['fields'] = fields unless fields.nil?
123
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
124
+ execute_or_queue_command(command, &block)
125
+ end
126
+
127
+ # Creates a new cluster in a given project and location.
128
+ # @param [String] parent
129
+ # Required. The parent region in which to create the cluster. Structured like `
130
+ # projects/`project`/locations/`location``.
131
+ # @param [Google::Apis::ManagedkafkaV1::Cluster] cluster_object
132
+ # @param [String] cluster_id
133
+ # Required. The ID to use for the cluster, which will become the final component
134
+ # of the cluster's name. The ID must be 1-63 characters long, and match the
135
+ # regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` to comply with RFC 1035. This
136
+ # value is structured like: `my-cluster-id`.
137
+ # @param [String] request_id
138
+ # Optional. An optional request ID to identify requests. Specify a unique
139
+ # request ID to avoid duplication of requests. If a request times out or fails,
140
+ # retrying with the same ID allows the server to recognize the previous attempt.
141
+ # For at least 60 minutes, the server ignores duplicate requests bearing the
142
+ # same ID. For example, consider a situation where you make an initial request
143
+ # and the request times out. If you make the request again with the same request
144
+ # ID within 60 minutes of the last request, the server checks if an original
145
+ # operation with the same request ID was received. If so, the server ignores the
146
+ # second request. The request ID must be a valid UUID. A zero UUID is not
147
+ # supported (00000000-0000-0000-0000-000000000000).
148
+ # @param [String] fields
149
+ # Selector specifying which fields to include in a partial response.
150
+ # @param [String] quota_user
151
+ # Available to use for quota purposes for server-side applications. Can be any
152
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
153
+ # @param [Google::Apis::RequestOptions] options
154
+ # Request-specific options
155
+ #
156
+ # @yield [result, err] Result & error if block supplied
157
+ # @yieldparam result [Google::Apis::ManagedkafkaV1::Operation] parsed result object
158
+ # @yieldparam err [StandardError] error object if request failed
159
+ #
160
+ # @return [Google::Apis::ManagedkafkaV1::Operation]
161
+ #
162
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
163
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
164
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
165
+ def create_project_location_cluster(parent, cluster_object = nil, cluster_id: nil, request_id: nil, fields: nil, quota_user: nil, options: nil, &block)
166
+ command = make_simple_command(:post, 'v1/{+parent}/clusters', options)
167
+ command.request_representation = Google::Apis::ManagedkafkaV1::Cluster::Representation
168
+ command.request_object = cluster_object
169
+ command.response_representation = Google::Apis::ManagedkafkaV1::Operation::Representation
170
+ command.response_class = Google::Apis::ManagedkafkaV1::Operation
171
+ command.params['parent'] = parent unless parent.nil?
172
+ command.query['clusterId'] = cluster_id unless cluster_id.nil?
173
+ command.query['requestId'] = request_id unless request_id.nil?
174
+ command.query['fields'] = fields unless fields.nil?
175
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
176
+ execute_or_queue_command(command, &block)
177
+ end
178
+
179
+ # Deletes a single cluster.
180
+ # @param [String] name
181
+ # Required. The name of the cluster to delete.
182
+ # @param [String] request_id
183
+ # Optional. An optional request ID to identify requests. Specify a unique
184
+ # request ID to avoid duplication of requests. If a request times out or fails,
185
+ # retrying with the same ID allows the server to recognize the previous attempt.
186
+ # For at least 60 minutes, the server ignores duplicate requests bearing the
187
+ # same ID. For example, consider a situation where you make an initial request
188
+ # and the request times out. If you make the request again with the same request
189
+ # ID within 60 minutes of the last request, the server checks if an original
190
+ # operation with the same request ID was received. If so, the server ignores the
191
+ # second request. The request ID must be a valid UUID. A zero UUID is not
192
+ # supported (00000000-0000-0000-0000-000000000000).
193
+ # @param [String] fields
194
+ # Selector specifying which fields to include in a partial response.
195
+ # @param [String] quota_user
196
+ # Available to use for quota purposes for server-side applications. Can be any
197
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
198
+ # @param [Google::Apis::RequestOptions] options
199
+ # Request-specific options
200
+ #
201
+ # @yield [result, err] Result & error if block supplied
202
+ # @yieldparam result [Google::Apis::ManagedkafkaV1::Operation] parsed result object
203
+ # @yieldparam err [StandardError] error object if request failed
204
+ #
205
+ # @return [Google::Apis::ManagedkafkaV1::Operation]
206
+ #
207
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
208
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
209
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
210
+ def delete_project_location_cluster(name, request_id: nil, fields: nil, quota_user: nil, options: nil, &block)
211
+ command = make_simple_command(:delete, 'v1/{+name}', options)
212
+ command.response_representation = Google::Apis::ManagedkafkaV1::Operation::Representation
213
+ command.response_class = Google::Apis::ManagedkafkaV1::Operation
214
+ command.params['name'] = name unless name.nil?
215
+ command.query['requestId'] = request_id unless request_id.nil?
216
+ command.query['fields'] = fields unless fields.nil?
217
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
218
+ execute_or_queue_command(command, &block)
219
+ end
220
+
221
+ # Returns the properties of a single cluster.
222
+ # @param [String] name
223
+ # Required. The name of the cluster whose configuration to return.
224
+ # @param [String] fields
225
+ # Selector specifying which fields to include in a partial response.
226
+ # @param [String] quota_user
227
+ # Available to use for quota purposes for server-side applications. Can be any
228
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
229
+ # @param [Google::Apis::RequestOptions] options
230
+ # Request-specific options
231
+ #
232
+ # @yield [result, err] Result & error if block supplied
233
+ # @yieldparam result [Google::Apis::ManagedkafkaV1::Cluster] parsed result object
234
+ # @yieldparam err [StandardError] error object if request failed
235
+ #
236
+ # @return [Google::Apis::ManagedkafkaV1::Cluster]
237
+ #
238
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
239
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
240
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
241
+ def get_project_location_cluster(name, fields: nil, quota_user: nil, options: nil, &block)
242
+ command = make_simple_command(:get, 'v1/{+name}', options)
243
+ command.response_representation = Google::Apis::ManagedkafkaV1::Cluster::Representation
244
+ command.response_class = Google::Apis::ManagedkafkaV1::Cluster
245
+ command.params['name'] = name unless name.nil?
246
+ command.query['fields'] = fields unless fields.nil?
247
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
248
+ execute_or_queue_command(command, &block)
249
+ end
250
+
251
+ # Lists the clusters in a given project and location.
252
+ # @param [String] parent
253
+ # Required. The parent location whose clusters are to be listed. Structured like
254
+ # `projects/`project`/locations/`location``.
255
+ # @param [String] filter
256
+ # Optional. Filter expression for the result.
257
+ # @param [String] order_by
258
+ # Optional. Order by fields for the result.
259
+ # @param [Fixnum] page_size
260
+ # Optional. The maximum number of clusters to return. The service may return
261
+ # fewer than this value. If unspecified, server will pick an appropriate default.
262
+ # @param [String] page_token
263
+ # Optional. A page token, received from a previous `ListClusters` call. Provide
264
+ # this to retrieve the subsequent page. When paginating, all other parameters
265
+ # provided to `ListClusters` must match the call that provided the page token.
266
+ # @param [String] fields
267
+ # Selector specifying which fields to include in a partial response.
268
+ # @param [String] quota_user
269
+ # Available to use for quota purposes for server-side applications. Can be any
270
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
271
+ # @param [Google::Apis::RequestOptions] options
272
+ # Request-specific options
273
+ #
274
+ # @yield [result, err] Result & error if block supplied
275
+ # @yieldparam result [Google::Apis::ManagedkafkaV1::ListClustersResponse] parsed result object
276
+ # @yieldparam err [StandardError] error object if request failed
277
+ #
278
+ # @return [Google::Apis::ManagedkafkaV1::ListClustersResponse]
279
+ #
280
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
281
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
282
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
283
+ def list_project_location_clusters(parent, filter: nil, order_by: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
284
+ command = make_simple_command(:get, 'v1/{+parent}/clusters', options)
285
+ command.response_representation = Google::Apis::ManagedkafkaV1::ListClustersResponse::Representation
286
+ command.response_class = Google::Apis::ManagedkafkaV1::ListClustersResponse
287
+ command.params['parent'] = parent unless parent.nil?
288
+ command.query['filter'] = filter unless filter.nil?
289
+ command.query['orderBy'] = order_by unless order_by.nil?
290
+ command.query['pageSize'] = page_size unless page_size.nil?
291
+ command.query['pageToken'] = page_token unless page_token.nil?
292
+ command.query['fields'] = fields unless fields.nil?
293
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
294
+ execute_or_queue_command(command, &block)
295
+ end
296
+
297
+ # Updates the properties of a single cluster.
298
+ # @param [String] name
299
+ # Identifier. The name of the cluster. Structured like: projects/`project_number`
300
+ # /locations/`location`/clusters/`cluster_id`
301
+ # @param [Google::Apis::ManagedkafkaV1::Cluster] cluster_object
302
+ # @param [String] request_id
303
+ # Optional. An optional request ID to identify requests. Specify a unique
304
+ # request ID to avoid duplication of requests. If a request times out or fails,
305
+ # retrying with the same ID allows the server to recognize the previous attempt.
306
+ # For at least 60 minutes, the server ignores duplicate requests bearing the
307
+ # same ID. For example, consider a situation where you make an initial request
308
+ # and the request times out. If you make the request again with the same request
309
+ # ID within 60 minutes of the last request, the server checks if an original
310
+ # operation with the same request ID was received. If so, the server ignores the
311
+ # second request. The request ID must be a valid UUID. A zero UUID is not
312
+ # supported (00000000-0000-0000-0000-000000000000).
313
+ # @param [String] update_mask
314
+ # Required. Field mask is used to specify the fields to be overwritten in the
315
+ # cluster resource by the update. The fields specified in the update_mask are
316
+ # relative to the resource, not the full request. A field will be overwritten if
317
+ # it is in the mask. The mask is required and a value of * will update all
318
+ # fields.
319
+ # @param [String] fields
320
+ # Selector specifying which fields to include in a partial response.
321
+ # @param [String] quota_user
322
+ # Available to use for quota purposes for server-side applications. Can be any
323
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
324
+ # @param [Google::Apis::RequestOptions] options
325
+ # Request-specific options
326
+ #
327
+ # @yield [result, err] Result & error if block supplied
328
+ # @yieldparam result [Google::Apis::ManagedkafkaV1::Operation] parsed result object
329
+ # @yieldparam err [StandardError] error object if request failed
330
+ #
331
+ # @return [Google::Apis::ManagedkafkaV1::Operation]
332
+ #
333
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
334
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
335
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
336
+ def patch_project_location_cluster(name, cluster_object = nil, request_id: nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block)
337
+ command = make_simple_command(:patch, 'v1/{+name}', options)
338
+ command.request_representation = Google::Apis::ManagedkafkaV1::Cluster::Representation
339
+ command.request_object = cluster_object
340
+ command.response_representation = Google::Apis::ManagedkafkaV1::Operation::Representation
341
+ command.response_class = Google::Apis::ManagedkafkaV1::Operation
342
+ command.params['name'] = name unless name.nil?
343
+ command.query['requestId'] = request_id unless request_id.nil?
344
+ command.query['updateMask'] = update_mask unless update_mask.nil?
345
+ command.query['fields'] = fields unless fields.nil?
346
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
347
+ execute_or_queue_command(command, &block)
348
+ end
349
+
350
+ # Deletes a single consumer group.
351
+ # @param [String] name
352
+ # Required. The name of the consumer group to delete. `projects/`project`/
353
+ # locations/`location`/clusters/`cluster`/consumerGroups/`consumerGroup``.
354
+ # @param [String] fields
355
+ # Selector specifying which fields to include in a partial response.
356
+ # @param [String] quota_user
357
+ # Available to use for quota purposes for server-side applications. Can be any
358
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
359
+ # @param [Google::Apis::RequestOptions] options
360
+ # Request-specific options
361
+ #
362
+ # @yield [result, err] Result & error if block supplied
363
+ # @yieldparam result [Google::Apis::ManagedkafkaV1::Empty] parsed result object
364
+ # @yieldparam err [StandardError] error object if request failed
365
+ #
366
+ # @return [Google::Apis::ManagedkafkaV1::Empty]
367
+ #
368
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
369
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
370
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
371
+ def delete_project_location_cluster_consumer_group(name, fields: nil, quota_user: nil, options: nil, &block)
372
+ command = make_simple_command(:delete, 'v1/{+name}', options)
373
+ command.response_representation = Google::Apis::ManagedkafkaV1::Empty::Representation
374
+ command.response_class = Google::Apis::ManagedkafkaV1::Empty
375
+ command.params['name'] = name unless name.nil?
376
+ command.query['fields'] = fields unless fields.nil?
377
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
378
+ execute_or_queue_command(command, &block)
379
+ end
380
+
381
+ # Returns the properties of a single consumer group.
382
+ # @param [String] name
383
+ # Required. The name of the consumer group whose configuration to return. `
384
+ # projects/`project`/locations/`location`/clusters/`cluster`/consumerGroups/`
385
+ # consumerGroup``.
386
+ # @param [String] fields
387
+ # Selector specifying which fields to include in a partial response.
388
+ # @param [String] quota_user
389
+ # Available to use for quota purposes for server-side applications. Can be any
390
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
391
+ # @param [Google::Apis::RequestOptions] options
392
+ # Request-specific options
393
+ #
394
+ # @yield [result, err] Result & error if block supplied
395
+ # @yieldparam result [Google::Apis::ManagedkafkaV1::ConsumerGroup] parsed result object
396
+ # @yieldparam err [StandardError] error object if request failed
397
+ #
398
+ # @return [Google::Apis::ManagedkafkaV1::ConsumerGroup]
399
+ #
400
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
401
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
402
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
403
+ def get_project_location_cluster_consumer_group(name, fields: nil, quota_user: nil, options: nil, &block)
404
+ command = make_simple_command(:get, 'v1/{+name}', options)
405
+ command.response_representation = Google::Apis::ManagedkafkaV1::ConsumerGroup::Representation
406
+ command.response_class = Google::Apis::ManagedkafkaV1::ConsumerGroup
407
+ command.params['name'] = name unless name.nil?
408
+ command.query['fields'] = fields unless fields.nil?
409
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
410
+ execute_or_queue_command(command, &block)
411
+ end
412
+
413
+ # Lists the consumer groups in a given cluster.
414
+ # @param [String] parent
415
+ # Required. The parent cluster whose consumer groups are to be listed.
416
+ # Structured like `projects/`project`/locations/`location`/clusters/`cluster``.
417
+ # @param [Fixnum] page_size
418
+ # Optional. The maximum number of consumer groups to return. The service may
419
+ # return fewer than this value. If unset or zero, all consumer groups for the
420
+ # parent is returned.
421
+ # @param [String] page_token
422
+ # Optional. A page token, received from a previous `ListConsumerGroups` call.
423
+ # Provide this to retrieve the subsequent page. When paginating, all other
424
+ # parameters provided to `ListConsumerGroups` must match the call that provided
425
+ # the page token.
426
+ # @param [String] fields
427
+ # Selector specifying which fields to include in a partial response.
428
+ # @param [String] quota_user
429
+ # Available to use for quota purposes for server-side applications. Can be any
430
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
431
+ # @param [Google::Apis::RequestOptions] options
432
+ # Request-specific options
433
+ #
434
+ # @yield [result, err] Result & error if block supplied
435
+ # @yieldparam result [Google::Apis::ManagedkafkaV1::ListConsumerGroupsResponse] parsed result object
436
+ # @yieldparam err [StandardError] error object if request failed
437
+ #
438
+ # @return [Google::Apis::ManagedkafkaV1::ListConsumerGroupsResponse]
439
+ #
440
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
441
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
442
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
443
+ def list_project_location_cluster_consumer_groups(parent, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
444
+ command = make_simple_command(:get, 'v1/{+parent}/consumerGroups', options)
445
+ command.response_representation = Google::Apis::ManagedkafkaV1::ListConsumerGroupsResponse::Representation
446
+ command.response_class = Google::Apis::ManagedkafkaV1::ListConsumerGroupsResponse
447
+ command.params['parent'] = parent unless parent.nil?
448
+ command.query['pageSize'] = page_size unless page_size.nil?
449
+ command.query['pageToken'] = page_token unless page_token.nil?
450
+ command.query['fields'] = fields unless fields.nil?
451
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
452
+ execute_or_queue_command(command, &block)
453
+ end
454
+
455
+ # Updates the properties of a single consumer group.
456
+ # @param [String] name
457
+ # Identifier. The name of the consumer group. The `consumer_group` segment is
458
+ # used when connecting directly to the cluster. Structured like: projects/`
459
+ # project`/locations/`location`/clusters/`cluster`/consumerGroups/`
460
+ # consumer_group`
461
+ # @param [Google::Apis::ManagedkafkaV1::ConsumerGroup] consumer_group_object
462
+ # @param [String] update_mask
463
+ # Required. Field mask is used to specify the fields to be overwritten in the
464
+ # ConsumerGroup resource by the update. The fields specified in the update_mask
465
+ # are relative to the resource, not the full request. A field will be
466
+ # overwritten if it is in the mask. The mask is required and a value of * will
467
+ # update all fields.
468
+ # @param [String] fields
469
+ # Selector specifying which fields to include in a partial response.
470
+ # @param [String] quota_user
471
+ # Available to use for quota purposes for server-side applications. Can be any
472
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
473
+ # @param [Google::Apis::RequestOptions] options
474
+ # Request-specific options
475
+ #
476
+ # @yield [result, err] Result & error if block supplied
477
+ # @yieldparam result [Google::Apis::ManagedkafkaV1::ConsumerGroup] parsed result object
478
+ # @yieldparam err [StandardError] error object if request failed
479
+ #
480
+ # @return [Google::Apis::ManagedkafkaV1::ConsumerGroup]
481
+ #
482
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
483
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
484
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
485
+ def patch_project_location_cluster_consumer_group(name, consumer_group_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block)
486
+ command = make_simple_command(:patch, 'v1/{+name}', options)
487
+ command.request_representation = Google::Apis::ManagedkafkaV1::ConsumerGroup::Representation
488
+ command.request_object = consumer_group_object
489
+ command.response_representation = Google::Apis::ManagedkafkaV1::ConsumerGroup::Representation
490
+ command.response_class = Google::Apis::ManagedkafkaV1::ConsumerGroup
491
+ command.params['name'] = name unless name.nil?
492
+ command.query['updateMask'] = update_mask unless update_mask.nil?
493
+ command.query['fields'] = fields unless fields.nil?
494
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
495
+ execute_or_queue_command(command, &block)
496
+ end
497
+
498
+ # Creates a new topic in a given project and location.
499
+ # @param [String] parent
500
+ # Required. The parent cluster in which to create the topic. Structured like `
501
+ # projects/`project`/locations/`location`/clusters/`cluster``.
502
+ # @param [Google::Apis::ManagedkafkaV1::Topic] topic_object
503
+ # @param [String] topic_id
504
+ # Required. The ID to use for the topic, which will become the final component
505
+ # of the topic's name. This value is structured like: `my-topic-name`.
506
+ # @param [String] fields
507
+ # Selector specifying which fields to include in a partial response.
508
+ # @param [String] quota_user
509
+ # Available to use for quota purposes for server-side applications. Can be any
510
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
511
+ # @param [Google::Apis::RequestOptions] options
512
+ # Request-specific options
513
+ #
514
+ # @yield [result, err] Result & error if block supplied
515
+ # @yieldparam result [Google::Apis::ManagedkafkaV1::Topic] parsed result object
516
+ # @yieldparam err [StandardError] error object if request failed
517
+ #
518
+ # @return [Google::Apis::ManagedkafkaV1::Topic]
519
+ #
520
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
521
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
522
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
523
+ def create_project_location_cluster_topic(parent, topic_object = nil, topic_id: nil, fields: nil, quota_user: nil, options: nil, &block)
524
+ command = make_simple_command(:post, 'v1/{+parent}/topics', options)
525
+ command.request_representation = Google::Apis::ManagedkafkaV1::Topic::Representation
526
+ command.request_object = topic_object
527
+ command.response_representation = Google::Apis::ManagedkafkaV1::Topic::Representation
528
+ command.response_class = Google::Apis::ManagedkafkaV1::Topic
529
+ command.params['parent'] = parent unless parent.nil?
530
+ command.query['topicId'] = topic_id unless topic_id.nil?
531
+ command.query['fields'] = fields unless fields.nil?
532
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
533
+ execute_or_queue_command(command, &block)
534
+ end
535
+
536
+ # Deletes a single topic.
537
+ # @param [String] name
538
+ # Required. The name of the topic to delete. `projects/`project`/locations/`
539
+ # location`/clusters/`cluster`/topics/`topic``.
540
+ # @param [String] fields
541
+ # Selector specifying which fields to include in a partial response.
542
+ # @param [String] quota_user
543
+ # Available to use for quota purposes for server-side applications. Can be any
544
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
545
+ # @param [Google::Apis::RequestOptions] options
546
+ # Request-specific options
547
+ #
548
+ # @yield [result, err] Result & error if block supplied
549
+ # @yieldparam result [Google::Apis::ManagedkafkaV1::Empty] parsed result object
550
+ # @yieldparam err [StandardError] error object if request failed
551
+ #
552
+ # @return [Google::Apis::ManagedkafkaV1::Empty]
553
+ #
554
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
555
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
556
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
557
+ def delete_project_location_cluster_topic(name, fields: nil, quota_user: nil, options: nil, &block)
558
+ command = make_simple_command(:delete, 'v1/{+name}', options)
559
+ command.response_representation = Google::Apis::ManagedkafkaV1::Empty::Representation
560
+ command.response_class = Google::Apis::ManagedkafkaV1::Empty
561
+ command.params['name'] = name unless name.nil?
562
+ command.query['fields'] = fields unless fields.nil?
563
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
564
+ execute_or_queue_command(command, &block)
565
+ end
566
+
567
+ # Returns the properties of a single topic.
568
+ # @param [String] name
569
+ # Required. The name of the topic whose configuration to return. Structured like:
570
+ # projects/`project`/locations/`location`/clusters/`cluster`/topics/`topic`.
571
+ # @param [String] fields
572
+ # Selector specifying which fields to include in a partial response.
573
+ # @param [String] quota_user
574
+ # Available to use for quota purposes for server-side applications. Can be any
575
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
576
+ # @param [Google::Apis::RequestOptions] options
577
+ # Request-specific options
578
+ #
579
+ # @yield [result, err] Result & error if block supplied
580
+ # @yieldparam result [Google::Apis::ManagedkafkaV1::Topic] parsed result object
581
+ # @yieldparam err [StandardError] error object if request failed
582
+ #
583
+ # @return [Google::Apis::ManagedkafkaV1::Topic]
584
+ #
585
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
586
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
587
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
588
+ def get_project_location_cluster_topic(name, fields: nil, quota_user: nil, options: nil, &block)
589
+ command = make_simple_command(:get, 'v1/{+name}', options)
590
+ command.response_representation = Google::Apis::ManagedkafkaV1::Topic::Representation
591
+ command.response_class = Google::Apis::ManagedkafkaV1::Topic
592
+ command.params['name'] = name unless name.nil?
593
+ command.query['fields'] = fields unless fields.nil?
594
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
595
+ execute_or_queue_command(command, &block)
596
+ end
597
+
598
+ # Lists the topics in a given cluster.
599
+ # @param [String] parent
600
+ # Required. The parent cluster whose topics are to be listed. Structured like `
601
+ # projects/`project`/locations/`location`/clusters/`cluster``.
602
+ # @param [Fixnum] page_size
603
+ # Optional. The maximum number of topics to return. The service may return fewer
604
+ # than this value. If unset or zero, all topics for the parent is returned.
605
+ # @param [String] page_token
606
+ # Optional. A page token, received from a previous `ListTopics` call. Provide
607
+ # this to retrieve the subsequent page. When paginating, all other parameters
608
+ # provided to `ListTopics` must match the call that provided the page token.
609
+ # @param [String] fields
610
+ # Selector specifying which fields to include in a partial response.
611
+ # @param [String] quota_user
612
+ # Available to use for quota purposes for server-side applications. Can be any
613
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
614
+ # @param [Google::Apis::RequestOptions] options
615
+ # Request-specific options
616
+ #
617
+ # @yield [result, err] Result & error if block supplied
618
+ # @yieldparam result [Google::Apis::ManagedkafkaV1::ListTopicsResponse] parsed result object
619
+ # @yieldparam err [StandardError] error object if request failed
620
+ #
621
+ # @return [Google::Apis::ManagedkafkaV1::ListTopicsResponse]
622
+ #
623
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
624
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
625
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
626
+ def list_project_location_cluster_topics(parent, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
627
+ command = make_simple_command(:get, 'v1/{+parent}/topics', options)
628
+ command.response_representation = Google::Apis::ManagedkafkaV1::ListTopicsResponse::Representation
629
+ command.response_class = Google::Apis::ManagedkafkaV1::ListTopicsResponse
630
+ command.params['parent'] = parent unless parent.nil?
631
+ command.query['pageSize'] = page_size unless page_size.nil?
632
+ command.query['pageToken'] = page_token unless page_token.nil?
633
+ command.query['fields'] = fields unless fields.nil?
634
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
635
+ execute_or_queue_command(command, &block)
636
+ end
637
+
638
+ # Updates the properties of a single topic.
639
+ # @param [String] name
640
+ # Identifier. The name of the topic. The `topic` segment is used when connecting
641
+ # directly to the cluster. Structured like: projects/`project`/locations/`
642
+ # location`/clusters/`cluster`/topics/`topic`
643
+ # @param [Google::Apis::ManagedkafkaV1::Topic] topic_object
644
+ # @param [String] update_mask
645
+ # Required. Field mask is used to specify the fields to be overwritten in the
646
+ # Topic resource by the update. The fields specified in the update_mask are
647
+ # relative to the resource, not the full request. A field will be overwritten if
648
+ # it is in the mask. The mask is required and a value of * will update all
649
+ # fields.
650
+ # @param [String] fields
651
+ # Selector specifying which fields to include in a partial response.
652
+ # @param [String] quota_user
653
+ # Available to use for quota purposes for server-side applications. Can be any
654
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
655
+ # @param [Google::Apis::RequestOptions] options
656
+ # Request-specific options
657
+ #
658
+ # @yield [result, err] Result & error if block supplied
659
+ # @yieldparam result [Google::Apis::ManagedkafkaV1::Topic] parsed result object
660
+ # @yieldparam err [StandardError] error object if request failed
661
+ #
662
+ # @return [Google::Apis::ManagedkafkaV1::Topic]
663
+ #
664
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
665
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
666
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
667
+ def patch_project_location_cluster_topic(name, topic_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block)
668
+ command = make_simple_command(:patch, 'v1/{+name}', options)
669
+ command.request_representation = Google::Apis::ManagedkafkaV1::Topic::Representation
670
+ command.request_object = topic_object
671
+ command.response_representation = Google::Apis::ManagedkafkaV1::Topic::Representation
672
+ command.response_class = Google::Apis::ManagedkafkaV1::Topic
673
+ command.params['name'] = name unless name.nil?
674
+ command.query['updateMask'] = update_mask unless update_mask.nil?
675
+ command.query['fields'] = fields unless fields.nil?
676
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
677
+ execute_or_queue_command(command, &block)
678
+ end
679
+
680
+ # Starts asynchronous cancellation on a long-running operation. The server makes
681
+ # a best effort to cancel the operation, but success is not guaranteed. If the
682
+ # server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`.
683
+ # Clients can use Operations.GetOperation or other methods to check whether the
684
+ # cancellation succeeded or whether the operation completed despite cancellation.
685
+ # On successful cancellation, the operation is not deleted; instead, it becomes
686
+ # an operation with an Operation.error value with a google.rpc.Status.code of `1`
687
+ # , corresponding to `Code.CANCELLED`.
688
+ # @param [String] name
689
+ # The name of the operation resource to be cancelled.
690
+ # @param [Google::Apis::ManagedkafkaV1::CancelOperationRequest] cancel_operation_request_object
691
+ # @param [String] fields
692
+ # Selector specifying which fields to include in a partial response.
693
+ # @param [String] quota_user
694
+ # Available to use for quota purposes for server-side applications. Can be any
695
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
696
+ # @param [Google::Apis::RequestOptions] options
697
+ # Request-specific options
698
+ #
699
+ # @yield [result, err] Result & error if block supplied
700
+ # @yieldparam result [Google::Apis::ManagedkafkaV1::Empty] parsed result object
701
+ # @yieldparam err [StandardError] error object if request failed
702
+ #
703
+ # @return [Google::Apis::ManagedkafkaV1::Empty]
704
+ #
705
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
706
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
707
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
708
+ def cancel_operation(name, cancel_operation_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
709
+ command = make_simple_command(:post, 'v1/{+name}:cancel', options)
710
+ command.request_representation = Google::Apis::ManagedkafkaV1::CancelOperationRequest::Representation
711
+ command.request_object = cancel_operation_request_object
712
+ command.response_representation = Google::Apis::ManagedkafkaV1::Empty::Representation
713
+ command.response_class = Google::Apis::ManagedkafkaV1::Empty
714
+ command.params['name'] = name unless name.nil?
715
+ command.query['fields'] = fields unless fields.nil?
716
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
717
+ execute_or_queue_command(command, &block)
718
+ end
719
+
720
+ # Deletes a long-running operation. This method indicates that the client is no
721
+ # longer interested in the operation result. It does not cancel the operation.
722
+ # If the server doesn't support this method, it returns `google.rpc.Code.
723
+ # UNIMPLEMENTED`.
724
+ # @param [String] name
725
+ # The name of the operation resource to be deleted.
726
+ # @param [String] fields
727
+ # Selector specifying which fields to include in a partial response.
728
+ # @param [String] quota_user
729
+ # Available to use for quota purposes for server-side applications. Can be any
730
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
731
+ # @param [Google::Apis::RequestOptions] options
732
+ # Request-specific options
733
+ #
734
+ # @yield [result, err] Result & error if block supplied
735
+ # @yieldparam result [Google::Apis::ManagedkafkaV1::Empty] parsed result object
736
+ # @yieldparam err [StandardError] error object if request failed
737
+ #
738
+ # @return [Google::Apis::ManagedkafkaV1::Empty]
739
+ #
740
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
741
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
742
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
743
+ def delete_project_location_operation(name, fields: nil, quota_user: nil, options: nil, &block)
744
+ command = make_simple_command(:delete, 'v1/{+name}', options)
745
+ command.response_representation = Google::Apis::ManagedkafkaV1::Empty::Representation
746
+ command.response_class = Google::Apis::ManagedkafkaV1::Empty
747
+ command.params['name'] = name unless name.nil?
748
+ command.query['fields'] = fields unless fields.nil?
749
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
750
+ execute_or_queue_command(command, &block)
751
+ end
752
+
753
+ # Gets the latest state of a long-running operation. Clients can use this method
754
+ # to poll the operation result at intervals as recommended by the API service.
755
+ # @param [String] name
756
+ # The name of the operation resource.
757
+ # @param [String] fields
758
+ # Selector specifying which fields to include in a partial response.
759
+ # @param [String] quota_user
760
+ # Available to use for quota purposes for server-side applications. Can be any
761
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
762
+ # @param [Google::Apis::RequestOptions] options
763
+ # Request-specific options
764
+ #
765
+ # @yield [result, err] Result & error if block supplied
766
+ # @yieldparam result [Google::Apis::ManagedkafkaV1::Operation] parsed result object
767
+ # @yieldparam err [StandardError] error object if request failed
768
+ #
769
+ # @return [Google::Apis::ManagedkafkaV1::Operation]
770
+ #
771
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
772
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
773
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
774
+ def get_project_location_operation(name, fields: nil, quota_user: nil, options: nil, &block)
775
+ command = make_simple_command(:get, 'v1/{+name}', options)
776
+ command.response_representation = Google::Apis::ManagedkafkaV1::Operation::Representation
777
+ command.response_class = Google::Apis::ManagedkafkaV1::Operation
778
+ command.params['name'] = name unless name.nil?
779
+ command.query['fields'] = fields unless fields.nil?
780
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
781
+ execute_or_queue_command(command, &block)
782
+ end
783
+
784
+ # Lists operations that match the specified filter in the request. If the server
785
+ # doesn't support this method, it returns `UNIMPLEMENTED`.
786
+ # @param [String] name
787
+ # The name of the operation's parent resource.
788
+ # @param [String] filter
789
+ # The standard list filter.
790
+ # @param [Fixnum] page_size
791
+ # The standard list page size.
792
+ # @param [String] page_token
793
+ # The standard list page token.
794
+ # @param [String] fields
795
+ # Selector specifying which fields to include in a partial response.
796
+ # @param [String] quota_user
797
+ # Available to use for quota purposes for server-side applications. Can be any
798
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
799
+ # @param [Google::Apis::RequestOptions] options
800
+ # Request-specific options
801
+ #
802
+ # @yield [result, err] Result & error if block supplied
803
+ # @yieldparam result [Google::Apis::ManagedkafkaV1::ListOperationsResponse] parsed result object
804
+ # @yieldparam err [StandardError] error object if request failed
805
+ #
806
+ # @return [Google::Apis::ManagedkafkaV1::ListOperationsResponse]
807
+ #
808
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
809
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
810
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
811
+ def list_project_location_operations(name, filter: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
812
+ command = make_simple_command(:get, 'v1/{+name}/operations', options)
813
+ command.response_representation = Google::Apis::ManagedkafkaV1::ListOperationsResponse::Representation
814
+ command.response_class = Google::Apis::ManagedkafkaV1::ListOperationsResponse
815
+ command.params['name'] = name unless name.nil?
816
+ command.query['filter'] = filter unless filter.nil?
817
+ command.query['pageSize'] = page_size unless page_size.nil?
818
+ command.query['pageToken'] = page_token unless page_token.nil?
819
+ command.query['fields'] = fields unless fields.nil?
820
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
821
+ execute_or_queue_command(command, &block)
822
+ end
823
+
824
+ protected
825
+
826
+ def apply_command_defaults(command)
827
+ command.query['key'] = key unless key.nil?
828
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
829
+ end
830
+ end
831
+ end
832
+ end
833
+ end