google-cloud-bigquery-data_exchange-v1beta1 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (28) hide show
  1. checksums.yaml +7 -0
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +149 -0
  4. data/LICENSE.md +201 -0
  5. data/README.md +144 -0
  6. data/lib/google/cloud/bigquery/data_exchange/v1beta1/analytics_hub_service/client.rb +1791 -0
  7. data/lib/google/cloud/bigquery/data_exchange/v1beta1/analytics_hub_service/credentials.rb +50 -0
  8. data/lib/google/cloud/bigquery/data_exchange/v1beta1/analytics_hub_service/paths.rb +109 -0
  9. data/lib/google/cloud/bigquery/data_exchange/v1beta1/analytics_hub_service.rb +55 -0
  10. data/lib/google/cloud/bigquery/data_exchange/v1beta1/version.rb +30 -0
  11. data/lib/google/cloud/bigquery/data_exchange/v1beta1.rb +42 -0
  12. data/lib/google/cloud/bigquery/dataexchange/common/common_pb.rb +43 -0
  13. data/lib/google/cloud/bigquery/dataexchange/v1beta1/dataexchange_pb.rb +171 -0
  14. data/lib/google/cloud/bigquery/dataexchange/v1beta1/dataexchange_services_pb.rb +85 -0
  15. data/lib/google-cloud-bigquery-data_exchange-v1beta1.rb +21 -0
  16. data/proto_docs/README.md +4 -0
  17. data/proto_docs/google/api/field_behavior.rb +71 -0
  18. data/proto_docs/google/api/resource.rb +222 -0
  19. data/proto_docs/google/cloud/bigquery/dataexchange/common/common.rb +71 -0
  20. data/proto_docs/google/cloud/bigquery/dataexchange/v1beta1/dataexchange.rb +459 -0
  21. data/proto_docs/google/iam/v1/iam_policy.rb +87 -0
  22. data/proto_docs/google/iam/v1/options.rb +50 -0
  23. data/proto_docs/google/iam/v1/policy.rb +418 -0
  24. data/proto_docs/google/protobuf/empty.rb +36 -0
  25. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  26. data/proto_docs/google/protobuf/wrappers.rb +121 -0
  27. data/proto_docs/google/type/expr.rb +75 -0
  28. metadata +234 -0
@@ -0,0 +1,459 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2022 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 Bigquery
23
+ module DataExchange
24
+ module V1beta1
25
+ # A data exchange is a container that enables data sharing.
26
+ # It contains a set of listings of the data sources along with descriptive
27
+ # information of the data exchange.
28
+ # @!attribute [r] name
29
+ # @return [::String]
30
+ # Output only. The resource name of the data exchange.
31
+ # e.g. `projects/myproject/locations/US/dataExchanges/123`.
32
+ # @!attribute [rw] display_name
33
+ # @return [::String]
34
+ # Required. Human-readable display name of the data exchange. The display name must
35
+ # contain only Unicode letters, numbers (0-9), underscores (_), dashes (-),
36
+ # spaces ( ), and can't start or end with spaces.
37
+ # Default value is an empty string.
38
+ # Max length: 63 bytes.
39
+ # @!attribute [rw] description
40
+ # @return [::String]
41
+ # Optional. Short description of the data exchange that can consist of sentences
42
+ # or paragraphs. The description must not contain Unicode non-characters as
43
+ # well as C0 and C1 control codes except tabs (HT), new lines (LF), carriage
44
+ # returns (CR), and page breaks (FF).
45
+ # Default value is an empty string.
46
+ # Max length: 2000 bytes.
47
+ # @!attribute [rw] primary_contact
48
+ # @return [::String]
49
+ # Optional. Email, URL or other reference of the primary point of contact of the data
50
+ # exchange
51
+ # Max Length: 1000 bytes.
52
+ # @!attribute [rw] documentation
53
+ # @return [::String]
54
+ # Optional. Documentation describing the data exchange.
55
+ # @!attribute [r] listing_count
56
+ # @return [::Integer]
57
+ # Output only. Number of listings contained in the data exchange.
58
+ # @!attribute [rw] icon
59
+ # @return [::String]
60
+ # Optional. Base64 encoded image representing the data exchange. Max Size: 3.0MiB
61
+ # Expected image dimensions are 512x512 pixels, however the API only
62
+ # performs validation on size of the encoded data.
63
+ # Note: For byte fields, the contents of the field are base64-encoded (which
64
+ # increases the size of the data by 33-36%) when using JSON on the wire.
65
+ class DataExchange
66
+ include ::Google::Protobuf::MessageExts
67
+ extend ::Google::Protobuf::MessageExts::ClassMethods
68
+ end
69
+
70
+ # Contains details of the Data Provider.
71
+ # @!attribute [rw] name
72
+ # @return [::String]
73
+ # Optional. Name of the Data Provider.
74
+ # @!attribute [rw] primary_contact
75
+ # @return [::String]
76
+ # Optional. Email or URL of the Data Provider.
77
+ # Max Length: 1000 bytes.
78
+ class DataProvider
79
+ include ::Google::Protobuf::MessageExts
80
+ extend ::Google::Protobuf::MessageExts::ClassMethods
81
+ end
82
+
83
+ # Contains details of the Publisher.
84
+ # @!attribute [rw] name
85
+ # @return [::String]
86
+ # Optional. Name of the listing Publisher.
87
+ # @!attribute [rw] primary_contact
88
+ # @return [::String]
89
+ # Optional. Email or URL of the listing Publisher.
90
+ # Max Length: 1000 bytes.
91
+ class Publisher
92
+ include ::Google::Protobuf::MessageExts
93
+ extend ::Google::Protobuf::MessageExts::ClassMethods
94
+ end
95
+
96
+ # Defines the Destination BigQuery Dataset Reference.
97
+ # @!attribute [rw] dataset_id
98
+ # @return [::String]
99
+ # Required. A unique ID for this dataset, without the project name. The ID
100
+ # must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_).
101
+ # The maximum length is 1,024 characters.
102
+ # @!attribute [rw] project_id
103
+ # @return [::String]
104
+ # Required. The ID of the project containing this dataset.
105
+ class DestinationDatasetReference
106
+ include ::Google::Protobuf::MessageExts
107
+ extend ::Google::Protobuf::MessageExts::ClassMethods
108
+ end
109
+
110
+ # Defines the Destination BigQuery Dataset.
111
+ # @!attribute [rw] dataset_reference
112
+ # @return [::Google::Cloud::Bigquery::DataExchange::V1beta1::DestinationDatasetReference]
113
+ # Required. A reference that identifies the destination dataset.
114
+ # @!attribute [rw] friendly_name
115
+ # @return [::Google::Protobuf::StringValue]
116
+ # Optional. A descriptive name for the dataset.
117
+ # @!attribute [rw] description
118
+ # @return [::Google::Protobuf::StringValue]
119
+ # Optional. A user-friendly description of the dataset.
120
+ # @!attribute [rw] labels
121
+ # @return [::Google::Protobuf::Map{::String => ::String}]
122
+ # Optional. The labels associated with this dataset. You can use these
123
+ # to organize and group your datasets.
124
+ # You can set this property when inserting or updating a dataset.
125
+ # See https://cloud.google.com/resource-manager/docs/creating-managing-labels
126
+ # for more information.
127
+ # @!attribute [rw] location
128
+ # @return [::String]
129
+ # Required. The geographic location where the dataset should reside. See
130
+ # https://cloud.google.com/bigquery/docs/locations for supported
131
+ # locations.
132
+ class DestinationDataset
133
+ include ::Google::Protobuf::MessageExts
134
+ extend ::Google::Protobuf::MessageExts::ClassMethods
135
+
136
+ # @!attribute [rw] key
137
+ # @return [::String]
138
+ # @!attribute [rw] value
139
+ # @return [::String]
140
+ class LabelsEntry
141
+ include ::Google::Protobuf::MessageExts
142
+ extend ::Google::Protobuf::MessageExts::ClassMethods
143
+ end
144
+ end
145
+
146
+ # A listing is what gets published into a data exchange that a subscriber can
147
+ # subscribe to. It contains a reference to the data source along with
148
+ # descriptive information that will help subscribers find and subscribe the
149
+ # data.
150
+ # @!attribute [r] name
151
+ # @return [::String]
152
+ # Output only. The resource name of the listing.
153
+ # e.g. `projects/myproject/locations/US/dataExchanges/123/listings/456`
154
+ # @!attribute [rw] display_name
155
+ # @return [::String]
156
+ # Required. Human-readable display name of the listing. The display name must contain
157
+ # only Unicode letters, numbers (0-9), underscores (_), dashes (-), spaces
158
+ # ( ), and can't start or end with spaces.
159
+ # Default value is an empty string.
160
+ # Max length: 63 bytes.
161
+ # @!attribute [rw] description
162
+ # @return [::String]
163
+ # Optional. Short description of the listing that can consist of sentences or
164
+ # paragraphs. The description must not contain Unicode non-characters as
165
+ # well as C0 and C1 control codes except tabs (HT), new lines (LF), carriage
166
+ # returns (CR), and page breaks (FF).
167
+ # Default value is an empty string.
168
+ # Max length: 2000 bytes.
169
+ # @!attribute [rw] primary_contact
170
+ # @return [::String]
171
+ # Optional. Email or URL of the primary point of contact of the listing.
172
+ # Max Length: 1000 bytes.
173
+ # @!attribute [rw] documentation
174
+ # @return [::String]
175
+ # Optional. Documentation describing the listing.
176
+ # @!attribute [rw] bigquery_dataset
177
+ # @return [::Google::Cloud::Bigquery::DataExchange::V1beta1::Listing::BigQueryDatasetSource]
178
+ # Required. Shared dataset i.e. BigQuery dataset source.
179
+ # @!attribute [r] state
180
+ # @return [::Google::Cloud::Bigquery::DataExchange::V1beta1::Listing::State]
181
+ # Output only. Current state of the Listing.
182
+ # @!attribute [rw] icon
183
+ # @return [::String]
184
+ # Optional. Base64 encoded image representing the listing. Max Size: 3.0MiB
185
+ # Expected image dimensions are 512x512 pixels, however the API only
186
+ # performs validation on size of the encoded data.
187
+ # Note: For byte fields, the contents of the field are base64-encoded (which
188
+ # increases the size of the data by 33-36%) when using JSON on the wire.
189
+ # @!attribute [rw] data_provider
190
+ # @return [::Google::Cloud::Bigquery::DataExchange::V1beta1::DataProvider]
191
+ # Optional. The details of the Data Provider who owns the source data.
192
+ # @!attribute [rw] categories
193
+ # @return [::Array<::Google::Cloud::Bigquery::DataExchange::Common::Category>]
194
+ # Optional. Categories of the Listing. Up to two categories are allowed.
195
+ # @!attribute [rw] publisher
196
+ # @return [::Google::Cloud::Bigquery::DataExchange::V1beta1::Publisher]
197
+ # Optional. The details of the Publisher who owns the listing and has rights to share
198
+ # the source data.
199
+ # @!attribute [rw] request_access
200
+ # @return [::String]
201
+ # Optional. Email or URL of the request access of the listing.
202
+ # Subscribers can use this reference to request access.
203
+ # Max Length: 1000 bytes.
204
+ class Listing
205
+ include ::Google::Protobuf::MessageExts
206
+ extend ::Google::Protobuf::MessageExts::ClassMethods
207
+
208
+ # A reference to a Shared dataset. It's an existing BigQuery dataset with a
209
+ # collection of objects, such as tables and views, that you want to share
210
+ # with subscribers.
211
+ # Upon subscription to a Listing, Data Exchange creates a Linked dataset in
212
+ # the subscriber's project. A Linked dataset is an opaque, read-only BigQuery
213
+ # dataset that serves as a "symbolic link" to a shared dataset.
214
+ # @!attribute [rw] dataset
215
+ # @return [::String]
216
+ # Resource name of the dataset source for this listing.
217
+ # e.g. `projects/myproject/datasets/123`
218
+ class BigQueryDatasetSource
219
+ include ::Google::Protobuf::MessageExts
220
+ extend ::Google::Protobuf::MessageExts::ClassMethods
221
+ end
222
+
223
+ # State of the Listing
224
+ module State
225
+ # Default value. This value is unused.
226
+ STATE_UNSPECIFIED = 0
227
+
228
+ # Subscribable state. Users with dataexchange.listings.subscribe permission
229
+ # can subscribe to this Listing.
230
+ ACTIVE = 1
231
+ end
232
+ end
233
+
234
+ # Message for requesting list of DataExchanges.
235
+ # @!attribute [rw] parent
236
+ # @return [::String]
237
+ # Required. The parent resource path of the DataExchanges.
238
+ # e.g. `projects/myproject/locations/US`.
239
+ # @!attribute [rw] page_size
240
+ # @return [::Integer]
241
+ # The maximum number of results to return in a single response page. Leverage
242
+ # the page tokens to iterate through the entire collection.
243
+ # @!attribute [rw] page_token
244
+ # @return [::String]
245
+ # Page token, returned by a previous call, to request the next page of
246
+ # results.
247
+ class ListDataExchangesRequest
248
+ include ::Google::Protobuf::MessageExts
249
+ extend ::Google::Protobuf::MessageExts::ClassMethods
250
+ end
251
+
252
+ # Message for response to listing DataExchanges.
253
+ # @!attribute [rw] data_exchanges
254
+ # @return [::Array<::Google::Cloud::Bigquery::DataExchange::V1beta1::DataExchange>]
255
+ # The list of DataExchange.
256
+ # @!attribute [rw] next_page_token
257
+ # @return [::String]
258
+ # A token to request the next page of results.
259
+ class ListDataExchangesResponse
260
+ include ::Google::Protobuf::MessageExts
261
+ extend ::Google::Protobuf::MessageExts::ClassMethods
262
+ end
263
+
264
+ # Message for requesting list of DataExchanges from projects in an organization
265
+ # and location.
266
+ # @!attribute [rw] organization
267
+ # @return [::String]
268
+ # Required. The organization resource path of the projects containing DataExchanges.
269
+ # e.g. `organizations/myorg/locations/US`.
270
+ # @!attribute [rw] page_size
271
+ # @return [::Integer]
272
+ # The maximum number of results to return in a single response page. Leverage
273
+ # the page tokens to iterate through the entire collection.
274
+ # @!attribute [rw] page_token
275
+ # @return [::String]
276
+ # Page token, returned by a previous call, to request the next page of
277
+ # results.
278
+ class ListOrgDataExchangesRequest
279
+ include ::Google::Protobuf::MessageExts
280
+ extend ::Google::Protobuf::MessageExts::ClassMethods
281
+ end
282
+
283
+ # Message for response to listing DataExchanges in an organization and
284
+ # location.
285
+ # @!attribute [rw] data_exchanges
286
+ # @return [::Array<::Google::Cloud::Bigquery::DataExchange::V1beta1::DataExchange>]
287
+ # The list of DataExchange.
288
+ # @!attribute [rw] next_page_token
289
+ # @return [::String]
290
+ # A token to request the next page of results.
291
+ class ListOrgDataExchangesResponse
292
+ include ::Google::Protobuf::MessageExts
293
+ extend ::Google::Protobuf::MessageExts::ClassMethods
294
+ end
295
+
296
+ # Message for getting a DataExchange.
297
+ # @!attribute [rw] name
298
+ # @return [::String]
299
+ # Required. The resource name of the DataExchange.
300
+ # e.g. `projects/myproject/locations/US/dataExchanges/123`.
301
+ class GetDataExchangeRequest
302
+ include ::Google::Protobuf::MessageExts
303
+ extend ::Google::Protobuf::MessageExts::ClassMethods
304
+ end
305
+
306
+ # Message for creating a DataExchange.
307
+ # @!attribute [rw] parent
308
+ # @return [::String]
309
+ # Required. The parent resource path of the DataExchange.
310
+ # e.g. `projects/myproject/locations/US`.
311
+ # @!attribute [rw] data_exchange_id
312
+ # @return [::String]
313
+ # Required. The ID of the DataExchange to create.
314
+ # Must contain only Unicode letters, numbers (0-9), underscores (_).
315
+ # Should not use characters that require URL-escaping, or characters
316
+ # outside of ASCII, spaces.
317
+ # Max length: 100 bytes.
318
+ # @!attribute [rw] data_exchange
319
+ # @return [::Google::Cloud::Bigquery::DataExchange::V1beta1::DataExchange]
320
+ # Required. The DataExchange to create.
321
+ class CreateDataExchangeRequest
322
+ include ::Google::Protobuf::MessageExts
323
+ extend ::Google::Protobuf::MessageExts::ClassMethods
324
+ end
325
+
326
+ # Message for updating a DataExchange.
327
+ # @!attribute [rw] update_mask
328
+ # @return [::Google::Protobuf::FieldMask]
329
+ # Required. Field mask is used to specify the fields to be overwritten in the
330
+ # DataExchange resource by the update.
331
+ # The fields specified in the update_mask are relative to the resource, not
332
+ # the full request.
333
+ # @!attribute [rw] data_exchange
334
+ # @return [::Google::Cloud::Bigquery::DataExchange::V1beta1::DataExchange]
335
+ # Required. The DataExchange to update.
336
+ class UpdateDataExchangeRequest
337
+ include ::Google::Protobuf::MessageExts
338
+ extend ::Google::Protobuf::MessageExts::ClassMethods
339
+ end
340
+
341
+ # Message for deleting a DataExchange.
342
+ # @!attribute [rw] name
343
+ # @return [::String]
344
+ # Required. Resource name of the DataExchange to delete.
345
+ # e.g. `projects/myproject/locations/US/dataExchanges/123`.
346
+ class DeleteDataExchangeRequest
347
+ include ::Google::Protobuf::MessageExts
348
+ extend ::Google::Protobuf::MessageExts::ClassMethods
349
+ end
350
+
351
+ # Message for requesting list of Listings.
352
+ # @!attribute [rw] parent
353
+ # @return [::String]
354
+ # Required. The parent resource path of the listing.
355
+ # e.g. `projects/myproject/locations/US/dataExchanges/123`.
356
+ # @!attribute [rw] page_size
357
+ # @return [::Integer]
358
+ # The maximum number of results to return in a single response page. Leverage
359
+ # the page tokens to iterate through the entire collection.
360
+ # @!attribute [rw] page_token
361
+ # @return [::String]
362
+ # Page token, returned by a previous call, to request the next page of
363
+ # results.
364
+ class ListListingsRequest
365
+ include ::Google::Protobuf::MessageExts
366
+ extend ::Google::Protobuf::MessageExts::ClassMethods
367
+ end
368
+
369
+ # Message for response to listing Listings.
370
+ # @!attribute [rw] listings
371
+ # @return [::Array<::Google::Cloud::Bigquery::DataExchange::V1beta1::Listing>]
372
+ # The list of Listing.
373
+ # @!attribute [rw] next_page_token
374
+ # @return [::String]
375
+ # A token to request the next page of results.
376
+ class ListListingsResponse
377
+ include ::Google::Protobuf::MessageExts
378
+ extend ::Google::Protobuf::MessageExts::ClassMethods
379
+ end
380
+
381
+ # Message for getting a Listing.
382
+ # @!attribute [rw] name
383
+ # @return [::String]
384
+ # Required. The resource name of the listing.
385
+ # e.g. `projects/myproject/locations/US/dataExchanges/123/listings/456`.
386
+ class GetListingRequest
387
+ include ::Google::Protobuf::MessageExts
388
+ extend ::Google::Protobuf::MessageExts::ClassMethods
389
+ end
390
+
391
+ # Message for creating a Listing.
392
+ # @!attribute [rw] parent
393
+ # @return [::String]
394
+ # Required. The parent resource path of the listing.
395
+ # e.g. `projects/myproject/locations/US/dataExchanges/123`.
396
+ # @!attribute [rw] listing_id
397
+ # @return [::String]
398
+ # Required. The ID of the Listing to create.
399
+ # Must contain only Unicode letters, numbers (0-9), underscores (_).
400
+ # Should not use characters that require URL-escaping, or characters
401
+ # outside of ASCII, spaces.
402
+ # Max length: 100 bytes.
403
+ # @!attribute [rw] listing
404
+ # @return [::Google::Cloud::Bigquery::DataExchange::V1beta1::Listing]
405
+ # Required. The listing to create.
406
+ class CreateListingRequest
407
+ include ::Google::Protobuf::MessageExts
408
+ extend ::Google::Protobuf::MessageExts::ClassMethods
409
+ end
410
+
411
+ # Message for updating a Listing.
412
+ # @!attribute [rw] update_mask
413
+ # @return [::Google::Protobuf::FieldMask]
414
+ # Required. Field mask is used to specify the fields to be overwritten in the
415
+ # Listing resource by the update.
416
+ # The fields specified in the update_mask are relative to the resource, not
417
+ # the full request.
418
+ # @!attribute [rw] listing
419
+ # @return [::Google::Cloud::Bigquery::DataExchange::V1beta1::Listing]
420
+ # Required. The listing to update.
421
+ class UpdateListingRequest
422
+ include ::Google::Protobuf::MessageExts
423
+ extend ::Google::Protobuf::MessageExts::ClassMethods
424
+ end
425
+
426
+ # Message for deleting a Listing.
427
+ # @!attribute [rw] name
428
+ # @return [::String]
429
+ # Required. Resource name of the listing to delete.
430
+ # e.g. `projects/myproject/locations/US/dataExchanges/123/listings/456`.
431
+ class DeleteListingRequest
432
+ include ::Google::Protobuf::MessageExts
433
+ extend ::Google::Protobuf::MessageExts::ClassMethods
434
+ end
435
+
436
+ # Message for subscribing a Listing.
437
+ # @!attribute [rw] name
438
+ # @return [::String]
439
+ # Required. Resource name of the listing to subscribe to.
440
+ # e.g. `projects/myproject/locations/US/dataExchanges/123/listings/456`.
441
+ # @!attribute [rw] destination_dataset
442
+ # @return [::Google::Cloud::Bigquery::DataExchange::V1beta1::DestinationDataset]
443
+ # BigQuery destination dataset to create for the subscriber.
444
+ class SubscribeListingRequest
445
+ include ::Google::Protobuf::MessageExts
446
+ extend ::Google::Protobuf::MessageExts::ClassMethods
447
+ end
448
+
449
+ # Message for response to subscribing a Listing.
450
+ # Empty for now.
451
+ class SubscribeListingResponse
452
+ include ::Google::Protobuf::MessageExts
453
+ extend ::Google::Protobuf::MessageExts::ClassMethods
454
+ end
455
+ end
456
+ end
457
+ end
458
+ end
459
+ end
@@ -0,0 +1,87 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2022 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 Iam
22
+ module V1
23
+ # Request message for `SetIamPolicy` method.
24
+ # @!attribute [rw] resource
25
+ # @return [::String]
26
+ # REQUIRED: The resource for which the policy is being specified.
27
+ # See the operation documentation for the appropriate value for this field.
28
+ # @!attribute [rw] policy
29
+ # @return [::Google::Iam::V1::Policy]
30
+ # REQUIRED: The complete policy to be applied to the `resource`. The size of
31
+ # the policy is limited to a few 10s of KB. An empty policy is a
32
+ # valid policy but certain Cloud Platform services (such as Projects)
33
+ # might reject them.
34
+ # @!attribute [rw] update_mask
35
+ # @return [::Google::Protobuf::FieldMask]
36
+ # OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only
37
+ # the fields in the mask will be modified. If no mask is provided, the
38
+ # following default mask is used:
39
+ #
40
+ # `paths: "bindings, etag"`
41
+ class SetIamPolicyRequest
42
+ include ::Google::Protobuf::MessageExts
43
+ extend ::Google::Protobuf::MessageExts::ClassMethods
44
+ end
45
+
46
+ # Request message for `GetIamPolicy` method.
47
+ # @!attribute [rw] resource
48
+ # @return [::String]
49
+ # REQUIRED: The resource for which the policy is being requested.
50
+ # See the operation documentation for the appropriate value for this field.
51
+ # @!attribute [rw] options
52
+ # @return [::Google::Iam::V1::GetPolicyOptions]
53
+ # OPTIONAL: A `GetPolicyOptions` object for specifying options to
54
+ # `GetIamPolicy`.
55
+ class GetIamPolicyRequest
56
+ include ::Google::Protobuf::MessageExts
57
+ extend ::Google::Protobuf::MessageExts::ClassMethods
58
+ end
59
+
60
+ # Request message for `TestIamPermissions` method.
61
+ # @!attribute [rw] resource
62
+ # @return [::String]
63
+ # REQUIRED: The resource for which the policy detail is being requested.
64
+ # See the operation documentation for the appropriate value for this field.
65
+ # @!attribute [rw] permissions
66
+ # @return [::Array<::String>]
67
+ # The set of permissions to check for the `resource`. Permissions with
68
+ # wildcards (such as '*' or 'storage.*') are not allowed. For more
69
+ # information see
70
+ # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).
71
+ class TestIamPermissionsRequest
72
+ include ::Google::Protobuf::MessageExts
73
+ extend ::Google::Protobuf::MessageExts::ClassMethods
74
+ end
75
+
76
+ # Response message for `TestIamPermissions` method.
77
+ # @!attribute [rw] permissions
78
+ # @return [::Array<::String>]
79
+ # A subset of `TestPermissionsRequest.permissions` that the caller is
80
+ # allowed.
81
+ class TestIamPermissionsResponse
82
+ include ::Google::Protobuf::MessageExts
83
+ extend ::Google::Protobuf::MessageExts::ClassMethods
84
+ end
85
+ end
86
+ end
87
+ end
@@ -0,0 +1,50 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2022 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 Iam
22
+ module V1
23
+ # Encapsulates settings provided to GetIamPolicy.
24
+ # @!attribute [rw] requested_policy_version
25
+ # @return [::Integer]
26
+ # Optional. The maximum policy version that will be used to format the
27
+ # policy.
28
+ #
29
+ # Valid values are 0, 1, and 3. Requests specifying an invalid value will be
30
+ # rejected.
31
+ #
32
+ # Requests for policies with any conditional role bindings must specify
33
+ # version 3. Policies with no conditional role bindings may specify any valid
34
+ # value or leave the field unset.
35
+ #
36
+ # The policy in the response might use the policy version that you specified,
37
+ # or it might use a lower policy version. For example, if you specify version
38
+ # 3, but the policy has no conditional role bindings, the response uses
39
+ # version 1.
40
+ #
41
+ # To learn which resources support conditions in their IAM policies, see the
42
+ # [IAM
43
+ # documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
44
+ class GetPolicyOptions
45
+ include ::Google::Protobuf::MessageExts
46
+ extend ::Google::Protobuf::MessageExts::ClassMethods
47
+ end
48
+ end
49
+ end
50
+ end