google-cloud-service_control-v1 1.0.1 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 963f91864f1a30cbc797962829242ae951a4c2f7f885dd530e1d4b37f0fb1272
4
- data.tar.gz: 3231978f6632d3e8cae839b0165190872cc47ca30b035a12d0b21fcdda318253
3
+ metadata.gz: 49ffa5cad60f88f4fd16bb7e96b0eab9169fbb1dd084d9eb87b9919370b5684f
4
+ data.tar.gz: 5a9abbc9e8a4974e41f930284fa8983be3df85af0626715b60284bf4855a8d20
5
5
  SHA512:
6
- metadata.gz: ff4f5036384eacd3fb97092f163f9022f8b0ee294d02c8502365c96e55f54fd299aec7a9920946ce20e45f908ca31fc569b8cc5c4bd46a7bc209f3a2d533493d
7
- data.tar.gz: 4c287eecc0152c85c82ef57ae4b3b77a0fe5e24a93eb71fe0cba45714f8e4b0ae43324b0a2d5472b1536d87784a51070581bc67aae4437f296924872391c00d7
6
+ metadata.gz: 3f5247288f1cc5b361e4f49893216ec1bebeeae100867103a20d846fa3f4b64e904083b00899ff58b988e0795a0a3e76d84feb13375d8dbcbae41b02a04412cd
7
+ data.tar.gz: e1adddf9531faebac35262b9cf16da0a986aad6e2e3fa6fdd978fe838b6a4ed32a176205c44170ddf5f239a1b659bd5649053a9397dc21eb9efba803c39f9a81
data/README.md CHANGED
@@ -43,40 +43,50 @@ for class and method documentation.
43
43
  See also the [Product Documentation](https://cloud.google.com/service-infrastructure/docs/overview/)
44
44
  for general usage information.
45
45
 
46
- ## Enabling Logging
47
-
48
- To enable logging for this library, set the logger for the underlying [gRPC](https://github.com/grpc/grpc/tree/master/src/ruby) library.
49
- The logger that you set may be a Ruby stdlib [`Logger`](https://ruby-doc.org/current/stdlibs/logger/Logger.html) as shown below,
50
- or a [`Google::Cloud::Logging::Logger`](https://cloud.google.com/ruby/docs/reference/google-cloud-logging/latest)
51
- that will write logs to [Cloud Logging](https://cloud.google.com/logging/). See [grpc/logconfig.rb](https://github.com/grpc/grpc/blob/master/src/ruby/lib/grpc/logconfig.rb)
52
- and the gRPC [spec_helper.rb](https://github.com/grpc/grpc/blob/master/src/ruby/spec/spec_helper.rb) for additional information.
53
-
54
- Configuring a Ruby stdlib logger:
46
+ ## Debug Logging
47
+
48
+ This library comes with opt-in Debug Logging that can help you troubleshoot
49
+ your application's integration with the API. When logging is activated, key
50
+ events such as requests and responses, along with data payloads and metadata
51
+ such as headers and client configuration, are logged to the standard error
52
+ stream.
53
+
54
+ **WARNING:** Client Library Debug Logging includes your data payloads in
55
+ plaintext, which could include sensitive data such as PII for yourself or your
56
+ customers, private keys, or other security data that could be compromising if
57
+ leaked. Always practice good data hygiene with your application logs, and follow
58
+ the principle of least access. Google also recommends that Client Library Debug
59
+ Logging be enabled only temporarily during active debugging, and not used
60
+ permanently in production.
61
+
62
+ To enable logging, set the environment variable `GOOGLE_SDK_RUBY_LOGGING_GEMS`
63
+ to the value `all`. Alternatively, you can set the value to a comma-delimited
64
+ list of client library gem names. This will select the default logging behavior,
65
+ which writes logs to the standard error stream. On a local workstation, this may
66
+ result in logs appearing on the console. When running on a Google Cloud hosting
67
+ service such as [Google Cloud Run](https://cloud.google.com/run), this generally
68
+ results in logs appearing alongside your application logs in the
69
+ [Google Cloud Logging](https://cloud.google.com/logging/) service.
70
+
71
+ You can customize logging by modifying the `logger` configuration when
72
+ constructing a client object. For example:
55
73
 
56
74
  ```ruby
75
+ require "google/cloud/service_control/v1"
57
76
  require "logger"
58
77
 
59
- module MyLogger
60
- LOGGER = Logger.new $stderr, level: Logger::WARN
61
- def logger
62
- LOGGER
63
- end
64
- end
65
-
66
- # Define a gRPC module-level logger method before grpc/logconfig.rb loads.
67
- module GRPC
68
- extend MyLogger
78
+ client = ::Google::Cloud::ServiceControl::V1::QuotaController::Client.new do |config|
79
+ config.logger = Logger.new "my-app.log"
69
80
  end
70
81
  ```
71
82
 
72
-
73
83
  ## Google Cloud Samples
74
84
 
75
85
  To browse ready to use code samples check [Google Cloud Samples](https://cloud.google.com/docs/samples).
76
86
 
77
87
  ## Supported Ruby Versions
78
88
 
79
- This library is supported on Ruby 2.7+.
89
+ This library is supported on Ruby 3.0+.
80
90
 
81
91
  Google provides official support for Ruby versions that are actively supported
82
92
  by Ruby Core—that is, Ruby versions that are either in normal maintenance or
@@ -158,8 +158,28 @@ module Google
158
158
  universe_domain: @config.universe_domain,
159
159
  channel_args: @config.channel_args,
160
160
  interceptors: @config.interceptors,
161
- channel_pool_config: @config.channel_pool
161
+ channel_pool_config: @config.channel_pool,
162
+ logger: @config.logger
162
163
  )
164
+
165
+ @quota_controller_stub.stub_logger&.info do |entry|
166
+ entry.set_system_name
167
+ entry.set_service
168
+ entry.message = "Created client for #{entry.service}"
169
+ entry.set_credentials_fields credentials
170
+ entry.set "customEndpoint", @config.endpoint if @config.endpoint
171
+ entry.set "defaultTimeout", @config.timeout if @config.timeout
172
+ entry.set "quotaProject", @quota_project_id if @quota_project_id
173
+ end
174
+ end
175
+
176
+ ##
177
+ # The logger used for request/response debug logging.
178
+ #
179
+ # @return [Logger]
180
+ #
181
+ def logger
182
+ @quota_controller_stub.logger
163
183
  end
164
184
 
165
185
  # Service calls
@@ -263,7 +283,6 @@ module Google
263
283
 
264
284
  @quota_controller_stub.call_rpc :allocate_quota, request, options: options do |response, operation|
265
285
  yield response, operation if block_given?
266
- return response
267
286
  end
268
287
  rescue ::GRPC::BadStatus => e
269
288
  raise ::Google::Cloud::Error.from_error(e)
@@ -313,6 +332,13 @@ module Google
313
332
  # * (`GRPC::Core::Channel`) a gRPC channel with included credentials
314
333
  # * (`GRPC::Core::ChannelCredentials`) a gRPC credentails object
315
334
  # * (`nil`) indicating no credentials
335
+ #
336
+ # Warning: If you accept a credential configuration (JSON file or Hash) from an
337
+ # external source for authentication to Google Cloud, you must validate it before
338
+ # providing it to a Google API client library. Providing an unvalidated credential
339
+ # configuration to Google APIs can compromise the security of your systems and data.
340
+ # For more information, refer to [Validate credential configurations from external
341
+ # sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials).
316
342
  # @return [::Object]
317
343
  # @!attribute [rw] scope
318
344
  # The OAuth scopes
@@ -352,6 +378,11 @@ module Google
352
378
  # default endpoint URL. The default value of nil uses the environment
353
379
  # universe (usually the default "googleapis.com" universe).
354
380
  # @return [::String,nil]
381
+ # @!attribute [rw] logger
382
+ # A custom logger to use for request/response debug logging, or the value
383
+ # `:default` (the default) to construct a default logger, or `nil` to
384
+ # explicitly disable logging.
385
+ # @return [::Logger,:default,nil]
355
386
  #
356
387
  class Configuration
357
388
  extend ::Gapic::Config
@@ -376,6 +407,7 @@ module Google
376
407
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
377
408
  config_attr :quota_project, nil, ::String, nil
378
409
  config_attr :universe_domain, nil, ::String, nil
410
+ config_attr :logger, :default, ::Logger, nil, :default
379
411
 
380
412
  # @private
381
413
  def initialize parent_config = nil
@@ -151,8 +151,28 @@ module Google
151
151
  endpoint: @config.endpoint,
152
152
  endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
153
153
  universe_domain: @config.universe_domain,
154
- credentials: credentials
154
+ credentials: credentials,
155
+ logger: @config.logger
155
156
  )
157
+
158
+ @quota_controller_stub.logger(stub: true)&.info do |entry|
159
+ entry.set_system_name
160
+ entry.set_service
161
+ entry.message = "Created client for #{entry.service}"
162
+ entry.set_credentials_fields credentials
163
+ entry.set "customEndpoint", @config.endpoint if @config.endpoint
164
+ entry.set "defaultTimeout", @config.timeout if @config.timeout
165
+ entry.set "quotaProject", @quota_project_id if @quota_project_id
166
+ end
167
+ end
168
+
169
+ ##
170
+ # The logger used for request/response debug logging.
171
+ #
172
+ # @return [Logger]
173
+ #
174
+ def logger
175
+ @quota_controller_stub.logger
156
176
  end
157
177
 
158
178
  # Service calls
@@ -249,7 +269,6 @@ module Google
249
269
 
250
270
  @quota_controller_stub.allocate_quota request, options do |result, operation|
251
271
  yield result, operation if block_given?
252
- return result
253
272
  end
254
273
  rescue ::Gapic::Rest::Error => e
255
274
  raise ::Google::Cloud::Error.from_error(e)
@@ -297,6 +316,13 @@ module Google
297
316
  # * (`Signet::OAuth2::Client`) A signet oauth2 client object
298
317
  # (see the [signet docs](https://rubydoc.info/gems/signet/Signet/OAuth2/Client))
299
318
  # * (`nil`) indicating no credentials
319
+ #
320
+ # Warning: If you accept a credential configuration (JSON file or Hash) from an
321
+ # external source for authentication to Google Cloud, you must validate it before
322
+ # providing it to a Google API client library. Providing an unvalidated credential
323
+ # configuration to Google APIs can compromise the security of your systems and data.
324
+ # For more information, refer to [Validate credential configurations from external
325
+ # sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials).
300
326
  # @return [::Object]
301
327
  # @!attribute [rw] scope
302
328
  # The OAuth scopes
@@ -329,6 +355,11 @@ module Google
329
355
  # default endpoint URL. The default value of nil uses the environment
330
356
  # universe (usually the default "googleapis.com" universe).
331
357
  # @return [::String,nil]
358
+ # @!attribute [rw] logger
359
+ # A custom logger to use for request/response debug logging, or the value
360
+ # `:default` (the default) to construct a default logger, or `nil` to
361
+ # explicitly disable logging.
362
+ # @return [::Logger,:default,nil]
332
363
  #
333
364
  class Configuration
334
365
  extend ::Gapic::Config
@@ -350,6 +381,7 @@ module Google
350
381
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
351
382
  config_attr :quota_project, nil, ::String, nil
352
383
  config_attr :universe_domain, nil, ::String, nil
384
+ config_attr :logger, :default, ::Logger, nil, :default
353
385
 
354
386
  # @private
355
387
  def initialize parent_config = nil
@@ -30,7 +30,8 @@ module Google
30
30
  # including transcoding, making the REST call, and deserialing the response.
31
31
  #
32
32
  class ServiceStub
33
- def initialize endpoint:, endpoint_template:, universe_domain:, credentials:
33
+ # @private
34
+ def initialize endpoint:, endpoint_template:, universe_domain:, credentials:, logger:
34
35
  # These require statements are intentionally placed here to initialize
35
36
  # the REST modules only when it's required.
36
37
  require "gapic/rest"
@@ -40,7 +41,9 @@ module Google
40
41
  universe_domain: universe_domain,
41
42
  credentials: credentials,
42
43
  numeric_enums: true,
43
- raise_faraday_errors: false
44
+ service_name: self.class,
45
+ raise_faraday_errors: false,
46
+ logger: logger
44
47
  end
45
48
 
46
49
  ##
@@ -61,6 +64,15 @@ module Google
61
64
  @client_stub.endpoint
62
65
  end
63
66
 
67
+ ##
68
+ # The logger used for request/response debug logging.
69
+ #
70
+ # @return [Logger]
71
+ #
72
+ def logger stub: false
73
+ stub ? @client_stub.stub_logger : @client_stub.logger
74
+ end
75
+
64
76
  ##
65
77
  # Baseline implementation for the allocate_quota REST call
66
78
  #
@@ -87,16 +99,18 @@ module Google
87
99
 
88
100
  response = @client_stub.make_http_request(
89
101
  verb,
90
- uri: uri,
91
- body: body || "",
92
- params: query_string_params,
102
+ uri: uri,
103
+ body: body || "",
104
+ params: query_string_params,
105
+ method_name: "allocate_quota",
93
106
  options: options
94
107
  )
95
108
  operation = ::Gapic::Rest::TransportOperation.new response
96
109
  result = ::Google::Cloud::ServiceControl::V1::AllocateQuotaResponse.decode_json response.body, ignore_unknown_fields: true
97
-
98
- yield result, operation if block_given?
99
- result
110
+ catch :response do
111
+ yield result, operation if block_given?
112
+ result
113
+ end
100
114
  end
101
115
 
102
116
  ##
@@ -165,8 +165,28 @@ module Google
165
165
  universe_domain: @config.universe_domain,
166
166
  channel_args: @config.channel_args,
167
167
  interceptors: @config.interceptors,
168
- channel_pool_config: @config.channel_pool
168
+ channel_pool_config: @config.channel_pool,
169
+ logger: @config.logger
169
170
  )
171
+
172
+ @service_controller_stub.stub_logger&.info do |entry|
173
+ entry.set_system_name
174
+ entry.set_service
175
+ entry.message = "Created client for #{entry.service}"
176
+ entry.set_credentials_fields credentials
177
+ entry.set "customEndpoint", @config.endpoint if @config.endpoint
178
+ entry.set "defaultTimeout", @config.timeout if @config.timeout
179
+ entry.set "quotaProject", @quota_project_id if @quota_project_id
180
+ end
181
+ end
182
+
183
+ ##
184
+ # The logger used for request/response debug logging.
185
+ #
186
+ # @return [Logger]
187
+ #
188
+ def logger
189
+ @service_controller_stub.logger
170
190
  end
171
191
 
172
192
  # Service calls
@@ -280,7 +300,6 @@ module Google
280
300
 
281
301
  @service_controller_stub.call_rpc :check, request, options: options do |response, operation|
282
302
  yield response, operation if block_given?
283
- return response
284
303
  end
285
304
  rescue ::GRPC::BadStatus => e
286
305
  raise ::Google::Cloud::Error.from_error(e)
@@ -403,7 +422,6 @@ module Google
403
422
 
404
423
  @service_controller_stub.call_rpc :report, request, options: options do |response, operation|
405
424
  yield response, operation if block_given?
406
- return response
407
425
  end
408
426
  rescue ::GRPC::BadStatus => e
409
427
  raise ::Google::Cloud::Error.from_error(e)
@@ -453,6 +471,13 @@ module Google
453
471
  # * (`GRPC::Core::Channel`) a gRPC channel with included credentials
454
472
  # * (`GRPC::Core::ChannelCredentials`) a gRPC credentails object
455
473
  # * (`nil`) indicating no credentials
474
+ #
475
+ # Warning: If you accept a credential configuration (JSON file or Hash) from an
476
+ # external source for authentication to Google Cloud, you must validate it before
477
+ # providing it to a Google API client library. Providing an unvalidated credential
478
+ # configuration to Google APIs can compromise the security of your systems and data.
479
+ # For more information, refer to [Validate credential configurations from external
480
+ # sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials).
456
481
  # @return [::Object]
457
482
  # @!attribute [rw] scope
458
483
  # The OAuth scopes
@@ -492,6 +517,11 @@ module Google
492
517
  # default endpoint URL. The default value of nil uses the environment
493
518
  # universe (usually the default "googleapis.com" universe).
494
519
  # @return [::String,nil]
520
+ # @!attribute [rw] logger
521
+ # A custom logger to use for request/response debug logging, or the value
522
+ # `:default` (the default) to construct a default logger, or `nil` to
523
+ # explicitly disable logging.
524
+ # @return [::Logger,:default,nil]
495
525
  #
496
526
  class Configuration
497
527
  extend ::Gapic::Config
@@ -516,6 +546,7 @@ module Google
516
546
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
517
547
  config_attr :quota_project, nil, ::String, nil
518
548
  config_attr :universe_domain, nil, ::String, nil
549
+ config_attr :logger, :default, ::Logger, nil, :default
519
550
 
520
551
  # @private
521
552
  def initialize parent_config = nil
@@ -158,8 +158,28 @@ module Google
158
158
  endpoint: @config.endpoint,
159
159
  endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
160
160
  universe_domain: @config.universe_domain,
161
- credentials: credentials
161
+ credentials: credentials,
162
+ logger: @config.logger
162
163
  )
164
+
165
+ @service_controller_stub.logger(stub: true)&.info do |entry|
166
+ entry.set_system_name
167
+ entry.set_service
168
+ entry.message = "Created client for #{entry.service}"
169
+ entry.set_credentials_fields credentials
170
+ entry.set "customEndpoint", @config.endpoint if @config.endpoint
171
+ entry.set "defaultTimeout", @config.timeout if @config.timeout
172
+ entry.set "quotaProject", @quota_project_id if @quota_project_id
173
+ end
174
+ end
175
+
176
+ ##
177
+ # The logger used for request/response debug logging.
178
+ #
179
+ # @return [Logger]
180
+ #
181
+ def logger
182
+ @service_controller_stub.logger
163
183
  end
164
184
 
165
185
  # Service calls
@@ -266,7 +286,6 @@ module Google
266
286
 
267
287
  @service_controller_stub.check request, options do |result, operation|
268
288
  yield result, operation if block_given?
269
- return result
270
289
  end
271
290
  rescue ::Gapic::Rest::Error => e
272
291
  raise ::Google::Cloud::Error.from_error(e)
@@ -382,7 +401,6 @@ module Google
382
401
 
383
402
  @service_controller_stub.report request, options do |result, operation|
384
403
  yield result, operation if block_given?
385
- return result
386
404
  end
387
405
  rescue ::Gapic::Rest::Error => e
388
406
  raise ::Google::Cloud::Error.from_error(e)
@@ -430,6 +448,13 @@ module Google
430
448
  # * (`Signet::OAuth2::Client`) A signet oauth2 client object
431
449
  # (see the [signet docs](https://rubydoc.info/gems/signet/Signet/OAuth2/Client))
432
450
  # * (`nil`) indicating no credentials
451
+ #
452
+ # Warning: If you accept a credential configuration (JSON file or Hash) from an
453
+ # external source for authentication to Google Cloud, you must validate it before
454
+ # providing it to a Google API client library. Providing an unvalidated credential
455
+ # configuration to Google APIs can compromise the security of your systems and data.
456
+ # For more information, refer to [Validate credential configurations from external
457
+ # sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials).
433
458
  # @return [::Object]
434
459
  # @!attribute [rw] scope
435
460
  # The OAuth scopes
@@ -462,6 +487,11 @@ module Google
462
487
  # default endpoint URL. The default value of nil uses the environment
463
488
  # universe (usually the default "googleapis.com" universe).
464
489
  # @return [::String,nil]
490
+ # @!attribute [rw] logger
491
+ # A custom logger to use for request/response debug logging, or the value
492
+ # `:default` (the default) to construct a default logger, or `nil` to
493
+ # explicitly disable logging.
494
+ # @return [::Logger,:default,nil]
465
495
  #
466
496
  class Configuration
467
497
  extend ::Gapic::Config
@@ -483,6 +513,7 @@ module Google
483
513
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
484
514
  config_attr :quota_project, nil, ::String, nil
485
515
  config_attr :universe_domain, nil, ::String, nil
516
+ config_attr :logger, :default, ::Logger, nil, :default
486
517
 
487
518
  # @private
488
519
  def initialize parent_config = nil
@@ -30,7 +30,8 @@ module Google
30
30
  # including transcoding, making the REST call, and deserialing the response.
31
31
  #
32
32
  class ServiceStub
33
- def initialize endpoint:, endpoint_template:, universe_domain:, credentials:
33
+ # @private
34
+ def initialize endpoint:, endpoint_template:, universe_domain:, credentials:, logger:
34
35
  # These require statements are intentionally placed here to initialize
35
36
  # the REST modules only when it's required.
36
37
  require "gapic/rest"
@@ -40,7 +41,9 @@ module Google
40
41
  universe_domain: universe_domain,
41
42
  credentials: credentials,
42
43
  numeric_enums: true,
43
- raise_faraday_errors: false
44
+ service_name: self.class,
45
+ raise_faraday_errors: false,
46
+ logger: logger
44
47
  end
45
48
 
46
49
  ##
@@ -61,6 +64,15 @@ module Google
61
64
  @client_stub.endpoint
62
65
  end
63
66
 
67
+ ##
68
+ # The logger used for request/response debug logging.
69
+ #
70
+ # @return [Logger]
71
+ #
72
+ def logger stub: false
73
+ stub ? @client_stub.stub_logger : @client_stub.logger
74
+ end
75
+
64
76
  ##
65
77
  # Baseline implementation for the check REST call
66
78
  #
@@ -87,16 +99,18 @@ module Google
87
99
 
88
100
  response = @client_stub.make_http_request(
89
101
  verb,
90
- uri: uri,
91
- body: body || "",
92
- params: query_string_params,
102
+ uri: uri,
103
+ body: body || "",
104
+ params: query_string_params,
105
+ method_name: "check",
93
106
  options: options
94
107
  )
95
108
  operation = ::Gapic::Rest::TransportOperation.new response
96
109
  result = ::Google::Cloud::ServiceControl::V1::CheckResponse.decode_json response.body, ignore_unknown_fields: true
97
-
98
- yield result, operation if block_given?
99
- result
110
+ catch :response do
111
+ yield result, operation if block_given?
112
+ result
113
+ end
100
114
  end
101
115
 
102
116
  ##
@@ -125,16 +139,18 @@ module Google
125
139
 
126
140
  response = @client_stub.make_http_request(
127
141
  verb,
128
- uri: uri,
129
- body: body || "",
130
- params: query_string_params,
142
+ uri: uri,
143
+ body: body || "",
144
+ params: query_string_params,
145
+ method_name: "report",
131
146
  options: options
132
147
  )
133
148
  operation = ::Gapic::Rest::TransportOperation.new response
134
149
  result = ::Google::Cloud::ServiceControl::V1::ReportResponse.decode_json response.body, ignore_unknown_fields: true
135
-
136
- yield result, operation if block_given?
137
- result
150
+ catch :response do
151
+ yield result, operation if block_given?
152
+ result
153
+ end
138
154
  end
139
155
 
140
156
  ##
@@ -21,7 +21,7 @@ module Google
21
21
  module Cloud
22
22
  module ServiceControl
23
23
  module V1
24
- VERSION = "1.0.1"
24
+ VERSION = "1.2.0"
25
25
  end
26
26
  end
27
27
  end
@@ -28,6 +28,9 @@ module Google
28
28
  # @!attribute [rw] destinations
29
29
  # @return [::Array<::Google::Api::ClientLibraryDestination>]
30
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.
31
34
  class CommonLanguageSettings
32
35
  include ::Google::Protobuf::MessageExts
33
36
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -212,6 +215,12 @@ module Google
212
215
  # enabled. By default, asynchronous REST clients will not be generated.
213
216
  # This feature will be enabled by default 1 month after launching the
214
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.
215
224
  class ExperimentalFeatures
216
225
  include ::Google::Protobuf::MessageExts
217
226
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -297,9 +306,28 @@ module Google
297
306
  # @!attribute [rw] common
298
307
  # @return [::Google::Api::CommonLanguageSettings]
299
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
300
319
  class GoSettings
301
320
  include ::Google::Protobuf::MessageExts
302
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
303
331
  end
304
332
 
305
333
  # Describes the generator configuration for a method.
@@ -375,6 +403,17 @@ module Google
375
403
  end
376
404
  end
377
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
+
378
417
  # The organization for which the client libraries are being published.
379
418
  # Affects the url where generated docs are published, etc.
380
419
  module ClientLibraryOrganization
@@ -115,12 +115,18 @@ module Google
115
115
  # @!attribute [rw] linear_buckets
116
116
  # @return [::Google::Api::Distribution::BucketOptions::Linear]
117
117
  # The linear bucket.
118
+ #
119
+ # Note: The following fields are mutually exclusive: `linear_buckets`, `exponential_buckets`, `explicit_buckets`. If a field in that set is populated, all other fields in the set will automatically be cleared.
118
120
  # @!attribute [rw] exponential_buckets
119
121
  # @return [::Google::Api::Distribution::BucketOptions::Exponential]
120
122
  # The exponential buckets.
123
+ #
124
+ # Note: The following fields are mutually exclusive: `exponential_buckets`, `linear_buckets`, `explicit_buckets`. If a field in that set is populated, all other fields in the set will automatically be cleared.
121
125
  # @!attribute [rw] explicit_buckets
122
126
  # @return [::Google::Api::Distribution::BucketOptions::Explicit]
123
127
  # The explicit buckets.
128
+ #
129
+ # Note: The following fields are mutually exclusive: `explicit_buckets`, `linear_buckets`, `exponential_buckets`. If a field in that set is populated, all other fields in the set will automatically be cleared.
124
130
  class BucketOptions
125
131
  include ::Google::Protobuf::MessageExts
126
132
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -64,12 +64,18 @@ module Google
64
64
  # @!attribute [rw] linear_buckets
65
65
  # @return [::Google::Cloud::ServiceControl::V1::Distribution::LinearBuckets]
66
66
  # Buckets with constant width.
67
+ #
68
+ # Note: The following fields are mutually exclusive: `linear_buckets`, `exponential_buckets`, `explicit_buckets`. If a field in that set is populated, all other fields in the set will automatically be cleared.
67
69
  # @!attribute [rw] exponential_buckets
68
70
  # @return [::Google::Cloud::ServiceControl::V1::Distribution::ExponentialBuckets]
69
71
  # Buckets with exponentially growing width.
72
+ #
73
+ # Note: The following fields are mutually exclusive: `exponential_buckets`, `linear_buckets`, `explicit_buckets`. If a field in that set is populated, all other fields in the set will automatically be cleared.
70
74
  # @!attribute [rw] explicit_buckets
71
75
  # @return [::Google::Cloud::ServiceControl::V1::Distribution::ExplicitBuckets]
72
76
  # Buckets with arbitrary user-provided width.
77
+ #
78
+ # Note: The following fields are mutually exclusive: `explicit_buckets`, `linear_buckets`, `exponential_buckets`. If a field in that set is populated, all other fields in the set will automatically be cleared.
73
79
  # @!attribute [rw] exemplars
74
80
  # @return [::Array<::Google::Api::Distribution::Exemplar>]
75
81
  # Example points. Must be in increasing order of `value` field.
@@ -57,13 +57,19 @@ module Google
57
57
  # The log entry payload, represented as a protocol buffer that is
58
58
  # expressed as a JSON object. The only accepted type currently is
59
59
  # [AuditLog][google.cloud.audit.AuditLog].
60
+ #
61
+ # Note: The following fields are mutually exclusive: `proto_payload`, `text_payload`, `struct_payload`. If a field in that set is populated, all other fields in the set will automatically be cleared.
60
62
  # @!attribute [rw] text_payload
61
63
  # @return [::String]
62
64
  # The log entry payload, represented as a Unicode string (UTF-8).
65
+ #
66
+ # Note: The following fields are mutually exclusive: `text_payload`, `proto_payload`, `struct_payload`. If a field in that set is populated, all other fields in the set will automatically be cleared.
63
67
  # @!attribute [rw] struct_payload
64
68
  # @return [::Google::Protobuf::Struct]
65
69
  # The log entry payload, represented as a structure that
66
70
  # is expressed as a JSON object.
71
+ #
72
+ # Note: The following fields are mutually exclusive: `struct_payload`, `proto_payload`, `text_payload`. If a field in that set is populated, all other fields in the set will automatically be cleared.
67
73
  # @!attribute [rw] operation
68
74
  # @return [::Google::Cloud::ServiceControl::V1::LogEntryOperation]
69
75
  # Optional. Information about an operation associated with the log entry, if
@@ -43,18 +43,28 @@ module Google
43
43
  # @!attribute [rw] bool_value
44
44
  # @return [::Boolean]
45
45
  # A boolean value.
46
+ #
47
+ # Note: The following fields are mutually exclusive: `bool_value`, `int64_value`, `double_value`, `string_value`, `distribution_value`. If a field in that set is populated, all other fields in the set will automatically be cleared.
46
48
  # @!attribute [rw] int64_value
47
49
  # @return [::Integer]
48
50
  # A signed 64-bit integer value.
51
+ #
52
+ # Note: The following fields are mutually exclusive: `int64_value`, `bool_value`, `double_value`, `string_value`, `distribution_value`. If a field in that set is populated, all other fields in the set will automatically be cleared.
49
53
  # @!attribute [rw] double_value
50
54
  # @return [::Float]
51
55
  # A double precision floating point value.
56
+ #
57
+ # Note: The following fields are mutually exclusive: `double_value`, `bool_value`, `int64_value`, `string_value`, `distribution_value`. If a field in that set is populated, all other fields in the set will automatically be cleared.
52
58
  # @!attribute [rw] string_value
53
59
  # @return [::String]
54
60
  # A text string value.
61
+ #
62
+ # Note: The following fields are mutually exclusive: `string_value`, `bool_value`, `int64_value`, `double_value`, `distribution_value`. If a field in that set is populated, all other fields in the set will automatically be cleared.
55
63
  # @!attribute [rw] distribution_value
56
64
  # @return [::Google::Cloud::ServiceControl::V1::Distribution]
57
65
  # A distribution value.
66
+ #
67
+ # Note: The following fields are mutually exclusive: `distribution_value`, `bool_value`, `int64_value`, `double_value`, `string_value`. If a field in that set is populated, all other fields in the set will automatically be cleared.
58
68
  class MetricValue
59
69
  include ::Google::Protobuf::MessageExts
60
70
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -53,21 +53,33 @@ module Google
53
53
  # @!attribute [rw] null_value
54
54
  # @return [::Google::Protobuf::NullValue]
55
55
  # Represents a null value.
56
+ #
57
+ # Note: The following fields are mutually exclusive: `null_value`, `number_value`, `string_value`, `bool_value`, `struct_value`, `list_value`. If a field in that set is populated, all other fields in the set will automatically be cleared.
56
58
  # @!attribute [rw] number_value
57
59
  # @return [::Float]
58
60
  # Represents a double value.
61
+ #
62
+ # Note: The following fields are mutually exclusive: `number_value`, `null_value`, `string_value`, `bool_value`, `struct_value`, `list_value`. If a field in that set is populated, all other fields in the set will automatically be cleared.
59
63
  # @!attribute [rw] string_value
60
64
  # @return [::String]
61
65
  # Represents a string value.
66
+ #
67
+ # Note: The following fields are mutually exclusive: `string_value`, `null_value`, `number_value`, `bool_value`, `struct_value`, `list_value`. If a field in that set is populated, all other fields in the set will automatically be cleared.
62
68
  # @!attribute [rw] bool_value
63
69
  # @return [::Boolean]
64
70
  # Represents a boolean value.
71
+ #
72
+ # Note: The following fields are mutually exclusive: `bool_value`, `null_value`, `number_value`, `string_value`, `struct_value`, `list_value`. If a field in that set is populated, all other fields in the set will automatically be cleared.
65
73
  # @!attribute [rw] struct_value
66
74
  # @return [::Google::Protobuf::Struct]
67
75
  # Represents a structured value.
76
+ #
77
+ # Note: The following fields are mutually exclusive: `struct_value`, `null_value`, `number_value`, `string_value`, `bool_value`, `list_value`. If a field in that set is populated, all other fields in the set will automatically be cleared.
68
78
  # @!attribute [rw] list_value
69
79
  # @return [::Google::Protobuf::ListValue]
70
80
  # Represents a repeated `Value`.
81
+ #
82
+ # Note: The following fields are mutually exclusive: `list_value`, `null_value`, `number_value`, `string_value`, `bool_value`, `struct_value`. If a field in that set is populated, all other fields in the set will automatically be cleared.
71
83
  class Value
72
84
  include ::Google::Protobuf::MessageExts
73
85
  extend ::Google::Protobuf::MessageExts::ClassMethods
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-cloud-service_control-v1
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ version: 1.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Google LLC
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2024-08-30 00:00:00.000000000 Z
10
+ date: 2025-01-29 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: gapic-common
@@ -16,7 +15,7 @@ dependencies:
16
15
  requirements:
17
16
  - - ">="
18
17
  - !ruby/object:Gem::Version
19
- version: 0.21.1
18
+ version: 0.25.0
20
19
  - - "<"
21
20
  - !ruby/object:Gem::Version
22
21
  version: 2.a
@@ -26,7 +25,7 @@ dependencies:
26
25
  requirements:
27
26
  - - ">="
28
27
  - !ruby/object:Gem::Version
29
- version: 0.21.1
28
+ version: 0.25.0
30
29
  - - "<"
31
30
  - !ruby/object:Gem::Version
32
31
  version: 2.a
@@ -107,7 +106,6 @@ homepage: https://github.com/googleapis/google-cloud-ruby
107
106
  licenses:
108
107
  - Apache-2.0
109
108
  metadata: {}
110
- post_install_message:
111
109
  rdoc_options: []
112
110
  require_paths:
113
111
  - lib
@@ -115,15 +113,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
115
113
  requirements:
116
114
  - - ">="
117
115
  - !ruby/object:Gem::Version
118
- version: '2.7'
116
+ version: '3.0'
119
117
  required_rubygems_version: !ruby/object:Gem::Requirement
120
118
  requirements:
121
119
  - - ">="
122
120
  - !ruby/object:Gem::Version
123
121
  version: '0'
124
122
  requirements: []
125
- rubygems_version: 3.5.6
126
- signing_key:
123
+ rubygems_version: 3.6.2
127
124
  specification_version: 4
128
125
  summary: Provides admission control and telemetry reporting for services integrated
129
126
  with Service Infrastructure.