google-cloud-resource_settings-v1 1.2.0 → 2.0.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.
@@ -1,81 +0,0 @@
1
- # Generated by the protocol buffer compiler. DO NOT EDIT!
2
- # Source: google/cloud/resourcesettings/v1/resource_settings.proto for package 'Google.Cloud.ResourceSettings.V1'
3
- # Original file comments:
4
- # Copyright 2021 Google LLC
5
- #
6
- # Licensed under the Apache License, Version 2.0 (the "License");
7
- # you may not use this file except in compliance with the License.
8
- # You may obtain a copy of the License at
9
- #
10
- # http://www.apache.org/licenses/LICENSE-2.0
11
- #
12
- # Unless required by applicable law or agreed to in writing, software
13
- # distributed under the License is distributed on an "AS IS" BASIS,
14
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
- # See the License for the specific language governing permissions and
16
- # limitations under the License.
17
- #
18
-
19
- require 'grpc'
20
- require 'google/cloud/resourcesettings/v1/resource_settings_pb'
21
-
22
- module Google
23
- module Cloud
24
- module ResourceSettings
25
- module V1
26
- module ResourceSettingsService
27
- # An interface to interact with resource settings and setting values throughout
28
- # the resource hierarchy.
29
- #
30
- # Services may surface a number of settings for users to control how their
31
- # resources behave. Values of settings applied on a given Cloud resource are
32
- # evaluated hierarchically and inherited by all descendants of that resource.
33
- #
34
- # For all requests, returns a `google.rpc.Status` with
35
- # `google.rpc.Code.PERMISSION_DENIED` if the IAM check fails or the `parent`
36
- # resource is not in a Cloud Organization.
37
- # For all requests, returns a `google.rpc.Status` with
38
- # `google.rpc.Code.INVALID_ARGUMENT` if the request is malformed.
39
- # (== deprecation_description Resource Settings is deprecated. As of November
40
- # 7, 2023, no organizations will be onboarded for any of the enabled settings,
41
- # and the service will be shut down on October 1, 2024. ==)
42
- class Service
43
-
44
- include ::GRPC::GenericService
45
-
46
- self.marshal_class_method = :encode
47
- self.unmarshal_class_method = :decode
48
- self.service_name = 'google.cloud.resourcesettings.v1.ResourceSettingsService'
49
-
50
- # Lists all the settings that are available on the Cloud resource `parent`.
51
- rpc :ListSettings, ::Google::Cloud::ResourceSettings::V1::ListSettingsRequest, ::Google::Cloud::ResourceSettings::V1::ListSettingsResponse
52
- # Gets a setting.
53
- #
54
- # Returns a `google.rpc.Status` with `google.rpc.Code.NOT_FOUND` if the
55
- # setting does not exist.
56
- rpc :GetSetting, ::Google::Cloud::ResourceSettings::V1::GetSettingRequest, ::Google::Cloud::ResourceSettings::V1::Setting
57
- # Updates a setting.
58
- #
59
- # Returns a `google.rpc.Status` with `google.rpc.Code.NOT_FOUND` if the
60
- # setting does not exist.
61
- # Returns a `google.rpc.Status` with `google.rpc.Code.FAILED_PRECONDITION` if
62
- # the setting is flagged as read only.
63
- # Returns a `google.rpc.Status` with `google.rpc.Code.ABORTED` if the etag
64
- # supplied in the request does not match the persisted etag of the setting
65
- # value.
66
- #
67
- # On success, the response will contain only `name`, `local_value` and
68
- # `etag`. The `metadata` and `effective_value` cannot be updated through
69
- # this API.
70
- #
71
- # Note: the supplied setting will perform a full overwrite of the
72
- # `local_value` field.
73
- rpc :UpdateSetting, ::Google::Cloud::ResourceSettings::V1::UpdateSettingRequest, ::Google::Cloud::ResourceSettings::V1::Setting
74
- end
75
-
76
- Stub = Service.rpc_stub_class
77
- end
78
- end
79
- end
80
- end
81
- end
@@ -1,21 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- # Copyright 2021 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
- # This gem does not autoload during Bundler.require. To load this gem,
20
- # issue explicit require statements for the packages desired, e.g.:
21
- # require "google/cloud/resource_settings/v1"
data/proto_docs/README.md DELETED
@@ -1,4 +0,0 @@
1
- # Resource Settings V1 Protocol Buffer Documentation
2
-
3
- These files are for the YARD documentation of the generated protobuf files.
4
- They are not intended to be required or loaded at runtime.
@@ -1,459 +0,0 @@
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 Api
22
- # Required information for every language.
23
- # @!attribute [rw] reference_docs_uri
24
- # @deprecated This field is deprecated and may be removed in the next major version update.
25
- # @return [::String]
26
- # Link to automatically generated reference documentation. Example:
27
- # https://cloud.google.com/nodejs/docs/reference/asset/latest
28
- # @!attribute [rw] destinations
29
- # @return [::Array<::Google::Api::ClientLibraryDestination>]
30
- # The destination where API teams want this client library to be published.
31
- # @!attribute [rw] selective_gapic_generation
32
- # @return [::Google::Api::SelectiveGapicGeneration]
33
- # Configuration for which RPCs should be generated in the GAPIC client.
34
- class CommonLanguageSettings
35
- include ::Google::Protobuf::MessageExts
36
- extend ::Google::Protobuf::MessageExts::ClassMethods
37
- end
38
-
39
- # Details about how and where to publish client libraries.
40
- # @!attribute [rw] version
41
- # @return [::String]
42
- # Version of the API to apply these settings to. This is the full protobuf
43
- # package for the API, ending in the version element.
44
- # Examples: "google.cloud.speech.v1" and "google.spanner.admin.database.v1".
45
- # @!attribute [rw] launch_stage
46
- # @return [::Google::Api::LaunchStage]
47
- # Launch stage of this version of the API.
48
- # @!attribute [rw] rest_numeric_enums
49
- # @return [::Boolean]
50
- # When using transport=rest, the client request will encode enums as
51
- # numbers rather than strings.
52
- # @!attribute [rw] java_settings
53
- # @return [::Google::Api::JavaSettings]
54
- # Settings for legacy Java features, supported in the Service YAML.
55
- # @!attribute [rw] cpp_settings
56
- # @return [::Google::Api::CppSettings]
57
- # Settings for C++ client libraries.
58
- # @!attribute [rw] php_settings
59
- # @return [::Google::Api::PhpSettings]
60
- # Settings for PHP client libraries.
61
- # @!attribute [rw] python_settings
62
- # @return [::Google::Api::PythonSettings]
63
- # Settings for Python client libraries.
64
- # @!attribute [rw] node_settings
65
- # @return [::Google::Api::NodeSettings]
66
- # Settings for Node client libraries.
67
- # @!attribute [rw] dotnet_settings
68
- # @return [::Google::Api::DotnetSettings]
69
- # Settings for .NET client libraries.
70
- # @!attribute [rw] ruby_settings
71
- # @return [::Google::Api::RubySettings]
72
- # Settings for Ruby client libraries.
73
- # @!attribute [rw] go_settings
74
- # @return [::Google::Api::GoSettings]
75
- # Settings for Go client libraries.
76
- class ClientLibrarySettings
77
- include ::Google::Protobuf::MessageExts
78
- extend ::Google::Protobuf::MessageExts::ClassMethods
79
- end
80
-
81
- # This message configures the settings for publishing [Google Cloud Client
82
- # libraries](https://cloud.google.com/apis/docs/cloud-client-libraries)
83
- # generated from the service config.
84
- # @!attribute [rw] method_settings
85
- # @return [::Array<::Google::Api::MethodSettings>]
86
- # A list of API method settings, e.g. the behavior for methods that use the
87
- # long-running operation pattern.
88
- # @!attribute [rw] new_issue_uri
89
- # @return [::String]
90
- # Link to a *public* URI where users can report issues. Example:
91
- # https://issuetracker.google.com/issues/new?component=190865&template=1161103
92
- # @!attribute [rw] documentation_uri
93
- # @return [::String]
94
- # Link to product home page. Example:
95
- # https://cloud.google.com/asset-inventory/docs/overview
96
- # @!attribute [rw] api_short_name
97
- # @return [::String]
98
- # Used as a tracking tag when collecting data about the APIs developer
99
- # relations artifacts like docs, packages delivered to package managers,
100
- # etc. Example: "speech".
101
- # @!attribute [rw] github_label
102
- # @return [::String]
103
- # GitHub label to apply to issues and pull requests opened for this API.
104
- # @!attribute [rw] codeowner_github_teams
105
- # @return [::Array<::String>]
106
- # GitHub teams to be added to CODEOWNERS in the directory in GitHub
107
- # containing source code for the client libraries for this API.
108
- # @!attribute [rw] doc_tag_prefix
109
- # @return [::String]
110
- # A prefix used in sample code when demarking regions to be included in
111
- # documentation.
112
- # @!attribute [rw] organization
113
- # @return [::Google::Api::ClientLibraryOrganization]
114
- # For whom the client library is being published.
115
- # @!attribute [rw] library_settings
116
- # @return [::Array<::Google::Api::ClientLibrarySettings>]
117
- # Client library settings. If the same version string appears multiple
118
- # times in this list, then the last one wins. Settings from earlier
119
- # settings with the same version string are discarded.
120
- # @!attribute [rw] proto_reference_documentation_uri
121
- # @return [::String]
122
- # Optional link to proto reference documentation. Example:
123
- # https://cloud.google.com/pubsub/lite/docs/reference/rpc
124
- # @!attribute [rw] rest_reference_documentation_uri
125
- # @return [::String]
126
- # Optional link to REST reference documentation. Example:
127
- # https://cloud.google.com/pubsub/lite/docs/reference/rest
128
- class Publishing
129
- include ::Google::Protobuf::MessageExts
130
- extend ::Google::Protobuf::MessageExts::ClassMethods
131
- end
132
-
133
- # Settings for Java client libraries.
134
- # @!attribute [rw] library_package
135
- # @return [::String]
136
- # The package name to use in Java. Clobbers the java_package option
137
- # set in the protobuf. This should be used **only** by APIs
138
- # who have already set the language_settings.java.package_name" field
139
- # in gapic.yaml. API teams should use the protobuf java_package option
140
- # where possible.
141
- #
142
- # Example of a YAML configuration::
143
- #
144
- # publishing:
145
- # java_settings:
146
- # library_package: com.google.cloud.pubsub.v1
147
- # @!attribute [rw] service_class_names
148
- # @return [::Google::Protobuf::Map{::String => ::String}]
149
- # Configure the Java class name to use instead of the service's for its
150
- # corresponding generated GAPIC client. Keys are fully-qualified
151
- # service names as they appear in the protobuf (including the full
152
- # the language_settings.java.interface_names" field in gapic.yaml. API
153
- # teams should otherwise use the service name as it appears in the
154
- # protobuf.
155
- #
156
- # Example of a YAML configuration::
157
- #
158
- # publishing:
159
- # java_settings:
160
- # service_class_names:
161
- # - google.pubsub.v1.Publisher: TopicAdmin
162
- # - google.pubsub.v1.Subscriber: SubscriptionAdmin
163
- # @!attribute [rw] common
164
- # @return [::Google::Api::CommonLanguageSettings]
165
- # Some settings.
166
- class JavaSettings
167
- include ::Google::Protobuf::MessageExts
168
- extend ::Google::Protobuf::MessageExts::ClassMethods
169
-
170
- # @!attribute [rw] key
171
- # @return [::String]
172
- # @!attribute [rw] value
173
- # @return [::String]
174
- class ServiceClassNamesEntry
175
- include ::Google::Protobuf::MessageExts
176
- extend ::Google::Protobuf::MessageExts::ClassMethods
177
- end
178
- end
179
-
180
- # Settings for C++ client libraries.
181
- # @!attribute [rw] common
182
- # @return [::Google::Api::CommonLanguageSettings]
183
- # Some settings.
184
- class CppSettings
185
- include ::Google::Protobuf::MessageExts
186
- extend ::Google::Protobuf::MessageExts::ClassMethods
187
- end
188
-
189
- # Settings for Php client libraries.
190
- # @!attribute [rw] common
191
- # @return [::Google::Api::CommonLanguageSettings]
192
- # Some settings.
193
- class PhpSettings
194
- include ::Google::Protobuf::MessageExts
195
- extend ::Google::Protobuf::MessageExts::ClassMethods
196
- end
197
-
198
- # Settings for Python client libraries.
199
- # @!attribute [rw] common
200
- # @return [::Google::Api::CommonLanguageSettings]
201
- # Some settings.
202
- # @!attribute [rw] experimental_features
203
- # @return [::Google::Api::PythonSettings::ExperimentalFeatures]
204
- # Experimental features to be included during client library generation.
205
- class PythonSettings
206
- include ::Google::Protobuf::MessageExts
207
- extend ::Google::Protobuf::MessageExts::ClassMethods
208
-
209
- # Experimental features to be included during client library generation.
210
- # These fields will be deprecated once the feature graduates and is enabled
211
- # by default.
212
- # @!attribute [rw] rest_async_io_enabled
213
- # @return [::Boolean]
214
- # Enables generation of asynchronous REST clients if `rest` transport is
215
- # enabled. By default, asynchronous REST clients will not be generated.
216
- # This feature will be enabled by default 1 month after launching the
217
- # feature in preview packages.
218
- # @!attribute [rw] protobuf_pythonic_types_enabled
219
- # @return [::Boolean]
220
- # Enables generation of protobuf code using new types that are more
221
- # Pythonic which are included in `protobuf>=5.29.x`. This feature will be
222
- # enabled by default 1 month after launching the feature in preview
223
- # packages.
224
- class ExperimentalFeatures
225
- include ::Google::Protobuf::MessageExts
226
- extend ::Google::Protobuf::MessageExts::ClassMethods
227
- end
228
- end
229
-
230
- # Settings for Node client libraries.
231
- # @!attribute [rw] common
232
- # @return [::Google::Api::CommonLanguageSettings]
233
- # Some settings.
234
- class NodeSettings
235
- include ::Google::Protobuf::MessageExts
236
- extend ::Google::Protobuf::MessageExts::ClassMethods
237
- end
238
-
239
- # Settings for Dotnet client libraries.
240
- # @!attribute [rw] common
241
- # @return [::Google::Api::CommonLanguageSettings]
242
- # Some settings.
243
- # @!attribute [rw] renamed_services
244
- # @return [::Google::Protobuf::Map{::String => ::String}]
245
- # Map from original service names to renamed versions.
246
- # This is used when the default generated types
247
- # would cause a naming conflict. (Neither name is
248
- # fully-qualified.)
249
- # Example: Subscriber to SubscriberServiceApi.
250
- # @!attribute [rw] renamed_resources
251
- # @return [::Google::Protobuf::Map{::String => ::String}]
252
- # Map from full resource types to the effective short name
253
- # for the resource. This is used when otherwise resource
254
- # named from different services would cause naming collisions.
255
- # Example entry:
256
- # "datalabeling.googleapis.com/Dataset": "DataLabelingDataset"
257
- # @!attribute [rw] ignored_resources
258
- # @return [::Array<::String>]
259
- # List of full resource types to ignore during generation.
260
- # This is typically used for API-specific Location resources,
261
- # which should be handled by the generator as if they were actually
262
- # the common Location resources.
263
- # Example entry: "documentai.googleapis.com/Location"
264
- # @!attribute [rw] forced_namespace_aliases
265
- # @return [::Array<::String>]
266
- # Namespaces which must be aliased in snippets due to
267
- # a known (but non-generator-predictable) naming collision
268
- # @!attribute [rw] handwritten_signatures
269
- # @return [::Array<::String>]
270
- # Method signatures (in the form "service.method(signature)")
271
- # which are provided separately, so shouldn't be generated.
272
- # Snippets *calling* these methods are still generated, however.
273
- class DotnetSettings
274
- include ::Google::Protobuf::MessageExts
275
- extend ::Google::Protobuf::MessageExts::ClassMethods
276
-
277
- # @!attribute [rw] key
278
- # @return [::String]
279
- # @!attribute [rw] value
280
- # @return [::String]
281
- class RenamedServicesEntry
282
- include ::Google::Protobuf::MessageExts
283
- extend ::Google::Protobuf::MessageExts::ClassMethods
284
- end
285
-
286
- # @!attribute [rw] key
287
- # @return [::String]
288
- # @!attribute [rw] value
289
- # @return [::String]
290
- class RenamedResourcesEntry
291
- include ::Google::Protobuf::MessageExts
292
- extend ::Google::Protobuf::MessageExts::ClassMethods
293
- end
294
- end
295
-
296
- # Settings for Ruby client libraries.
297
- # @!attribute [rw] common
298
- # @return [::Google::Api::CommonLanguageSettings]
299
- # Some settings.
300
- class RubySettings
301
- include ::Google::Protobuf::MessageExts
302
- extend ::Google::Protobuf::MessageExts::ClassMethods
303
- end
304
-
305
- # Settings for Go client libraries.
306
- # @!attribute [rw] common
307
- # @return [::Google::Api::CommonLanguageSettings]
308
- # Some settings.
309
- # @!attribute [rw] renamed_services
310
- # @return [::Google::Protobuf::Map{::String => ::String}]
311
- # Map of service names to renamed services. Keys are the package relative
312
- # service names and values are the name to be used for the service client
313
- # and call options.
314
- #
315
- # publishing:
316
- # go_settings:
317
- # renamed_services:
318
- # Publisher: TopicAdmin
319
- class GoSettings
320
- include ::Google::Protobuf::MessageExts
321
- extend ::Google::Protobuf::MessageExts::ClassMethods
322
-
323
- # @!attribute [rw] key
324
- # @return [::String]
325
- # @!attribute [rw] value
326
- # @return [::String]
327
- class RenamedServicesEntry
328
- include ::Google::Protobuf::MessageExts
329
- extend ::Google::Protobuf::MessageExts::ClassMethods
330
- end
331
- end
332
-
333
- # Describes the generator configuration for a method.
334
- # @!attribute [rw] selector
335
- # @return [::String]
336
- # The fully qualified name of the method, for which the options below apply.
337
- # This is used to find the method to apply the options.
338
- #
339
- # Example:
340
- #
341
- # publishing:
342
- # method_settings:
343
- # - selector: google.storage.control.v2.StorageControl.CreateFolder
344
- # # method settings for CreateFolder...
345
- # @!attribute [rw] long_running
346
- # @return [::Google::Api::MethodSettings::LongRunning]
347
- # Describes settings to use for long-running operations when generating
348
- # API methods for RPCs. Complements RPCs that use the annotations in
349
- # google/longrunning/operations.proto.
350
- #
351
- # Example of a YAML configuration::
352
- #
353
- # publishing:
354
- # method_settings:
355
- # - selector: google.cloud.speech.v2.Speech.BatchRecognize
356
- # long_running:
357
- # initial_poll_delay: 60s # 1 minute
358
- # poll_delay_multiplier: 1.5
359
- # max_poll_delay: 360s # 6 minutes
360
- # total_poll_timeout: 54000s # 90 minutes
361
- # @!attribute [rw] auto_populated_fields
362
- # @return [::Array<::String>]
363
- # List of top-level fields of the request message, that should be
364
- # automatically populated by the client libraries based on their
365
- # (google.api.field_info).format. Currently supported format: UUID4.
366
- #
367
- # Example of a YAML configuration:
368
- #
369
- # publishing:
370
- # method_settings:
371
- # - selector: google.example.v1.ExampleService.CreateExample
372
- # auto_populated_fields:
373
- # - request_id
374
- class MethodSettings
375
- include ::Google::Protobuf::MessageExts
376
- extend ::Google::Protobuf::MessageExts::ClassMethods
377
-
378
- # Describes settings to use when generating API methods that use the
379
- # long-running operation pattern.
380
- # All default values below are from those used in the client library
381
- # generators (e.g.
382
- # [Java](https://github.com/googleapis/gapic-generator-java/blob/04c2faa191a9b5a10b92392fe8482279c4404803/src/main/java/com/google/api/generator/gapic/composer/common/RetrySettingsComposer.java)).
383
- # @!attribute [rw] initial_poll_delay
384
- # @return [::Google::Protobuf::Duration]
385
- # Initial delay after which the first poll request will be made.
386
- # Default value: 5 seconds.
387
- # @!attribute [rw] poll_delay_multiplier
388
- # @return [::Float]
389
- # Multiplier to gradually increase delay between subsequent polls until it
390
- # reaches max_poll_delay.
391
- # Default value: 1.5.
392
- # @!attribute [rw] max_poll_delay
393
- # @return [::Google::Protobuf::Duration]
394
- # Maximum time between two subsequent poll requests.
395
- # Default value: 45 seconds.
396
- # @!attribute [rw] total_poll_timeout
397
- # @return [::Google::Protobuf::Duration]
398
- # Total polling timeout.
399
- # Default value: 5 minutes.
400
- class LongRunning
401
- include ::Google::Protobuf::MessageExts
402
- extend ::Google::Protobuf::MessageExts::ClassMethods
403
- end
404
- end
405
-
406
- # This message is used to configure the generation of a subset of the RPCs in
407
- # a service for client libraries.
408
- # @!attribute [rw] methods
409
- # @return [::Array<::String>]
410
- # An allowlist of the fully qualified names of RPCs that should be included
411
- # on public client surfaces.
412
- class SelectiveGapicGeneration
413
- include ::Google::Protobuf::MessageExts
414
- extend ::Google::Protobuf::MessageExts::ClassMethods
415
- end
416
-
417
- # The organization for which the client libraries are being published.
418
- # Affects the url where generated docs are published, etc.
419
- module ClientLibraryOrganization
420
- # Not useful.
421
- CLIENT_LIBRARY_ORGANIZATION_UNSPECIFIED = 0
422
-
423
- # Google Cloud Platform Org.
424
- CLOUD = 1
425
-
426
- # Ads (Advertising) Org.
427
- ADS = 2
428
-
429
- # Photos Org.
430
- PHOTOS = 3
431
-
432
- # Street View Org.
433
- STREET_VIEW = 4
434
-
435
- # Shopping Org.
436
- SHOPPING = 5
437
-
438
- # Geo Org.
439
- GEO = 6
440
-
441
- # Generative AI - https://developers.generativeai.google
442
- GENERATIVE_AI = 7
443
- end
444
-
445
- # To where should client libraries be published?
446
- module ClientLibraryDestination
447
- # Client libraries will neither be generated nor published to package
448
- # managers.
449
- CLIENT_LIBRARY_DESTINATION_UNSPECIFIED = 0
450
-
451
- # Generate the client library in a repo under github.com/googleapis,
452
- # but don't publish it to package managers.
453
- GITHUB = 10
454
-
455
- # Publish the library to package managers like nuget.org and npmjs.com.
456
- PACKAGE_MANAGER = 20
457
- end
458
- end
459
- end
@@ -1,85 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- # Copyright 2021 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 Api
22
- # An indicator of the behavior of a given field (for example, that a field
23
- # is required in requests, or given as output but ignored as input).
24
- # This **does not** change the behavior in protocol buffers itself; it only
25
- # denotes the behavior and may affect how API tooling handles the field.
26
- #
27
- # Note: This enum **may** receive new values in the future.
28
- module FieldBehavior
29
- # Conventional default for enums. Do not use this.
30
- FIELD_BEHAVIOR_UNSPECIFIED = 0
31
-
32
- # Specifically denotes a field as optional.
33
- # While all fields in protocol buffers are optional, this may be specified
34
- # for emphasis if appropriate.
35
- OPTIONAL = 1
36
-
37
- # Denotes a field as required.
38
- # This indicates that the field **must** be provided as part of the request,
39
- # and failure to do so will cause an error (usually `INVALID_ARGUMENT`).
40
- REQUIRED = 2
41
-
42
- # Denotes a field as output only.
43
- # This indicates that the field is provided in responses, but including the
44
- # field in a request does nothing (the server *must* ignore it and
45
- # *must not* throw an error as a result of the field's presence).
46
- OUTPUT_ONLY = 3
47
-
48
- # Denotes a field as input only.
49
- # This indicates that the field is provided in requests, and the
50
- # corresponding field is not included in output.
51
- INPUT_ONLY = 4
52
-
53
- # Denotes a field as immutable.
54
- # This indicates that the field may be set once in a request to create a
55
- # resource, but may not be changed thereafter.
56
- IMMUTABLE = 5
57
-
58
- # Denotes that a (repeated) field is an unordered list.
59
- # This indicates that the service may provide the elements of the list
60
- # in any arbitrary order, rather than the order the user originally
61
- # provided. Additionally, the list's order may or may not be stable.
62
- UNORDERED_LIST = 6
63
-
64
- # Denotes that this field returns a non-empty default value if not set.
65
- # This indicates that if the user provides the empty value in a request,
66
- # a non-empty value will be returned. The user will not be aware of what
67
- # non-empty value to expect.
68
- NON_EMPTY_DEFAULT = 7
69
-
70
- # Denotes that the field in a resource (a message annotated with
71
- # google.api.resource) is used in the resource name to uniquely identify the
72
- # resource. For AIP-compliant APIs, this should only be applied to the
73
- # `name` field on the resource.
74
- #
75
- # This behavior should not be applied to references to other resources within
76
- # the message.
77
- #
78
- # The identifier field of resources often have different field behavior
79
- # depending on the request it is embedded in (e.g. for Create methods name
80
- # is optional and unused, while for Update methods it is required). Instead
81
- # of method-specific annotations, only `IDENTIFIER` is required.
82
- IDENTIFIER = 8
83
- end
84
- end
85
- end