google-cloud-datastore-admin-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: 5c57f406221e788bbcc0461aff7d77b6f208fea235a0cfa2232f72f69c1e7347
4
- data.tar.gz: 956dcefe361027d9b00cd1d8d9fb490fd38e8eaffc7de90743c044f90701cd59
3
+ metadata.gz: 03c9338724d5d775acb20fc828b4d16168fcd8a06198d298c285f4cd27da965e
4
+ data.tar.gz: 49d227567e33bd54acde74c89611b9f82c110c8b246a29cc21277500b209bd7c
5
5
  SHA512:
6
- metadata.gz: 42ef654638cd4bb5c1c93976fd978f633dc2d95bdb095f7e9f48bfe5d2876f4e858dea2744d9699240b9fba174543db705fcea4664aea8d985e30d7f36ec44a4
7
- data.tar.gz: 86a3069b0b7037859a32c9840f7d2ccf5cb4544e29122957bd1fa49848968c50d11e1943e02f2090e0882594c8ac509b9131b8a5fb4a67ecd144af3c13f1bec4
6
+ metadata.gz: 8cfe600111e0e47856b5daf8d99e904fa28700c1482c2bda0e990f467f1593217a0e61382899f03c432366271ccb2da3cee809816186ac8c9d071cdddc268a0f
7
+ data.tar.gz: 1956ab7d3537a5c843fbef95a8177a978682d7d553978b9fbeadd190d84f25003c62ec5080c338dfb77ed56f5ee1aee8e7b1d05f0bc38ff3ab60d8a18e9be525
data/README.md CHANGED
@@ -43,40 +43,50 @@ for class and method documentation.
43
43
  See also the [Product Documentation](https://cloud.google.com/datastore)
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/datastore/admin/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::Datastore::Admin::V1::DatastoreAdmin::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
@@ -227,8 +227,19 @@ module Google
227
227
  universe_domain: @config.universe_domain,
228
228
  channel_args: @config.channel_args,
229
229
  interceptors: @config.interceptors,
230
- channel_pool_config: @config.channel_pool
230
+ channel_pool_config: @config.channel_pool,
231
+ logger: @config.logger
231
232
  )
233
+
234
+ @datastore_admin_stub.stub_logger&.info do |entry|
235
+ entry.set_system_name
236
+ entry.set_service
237
+ entry.message = "Created client for #{entry.service}"
238
+ entry.set_credentials_fields credentials
239
+ entry.set "customEndpoint", @config.endpoint if @config.endpoint
240
+ entry.set "defaultTimeout", @config.timeout if @config.timeout
241
+ entry.set "quotaProject", @quota_project_id if @quota_project_id
242
+ end
232
243
  end
233
244
 
234
245
  ##
@@ -238,6 +249,15 @@ module Google
238
249
  #
239
250
  attr_reader :operations_client
240
251
 
252
+ ##
253
+ # The logger used for request/response debug logging.
254
+ #
255
+ # @return [Logger]
256
+ #
257
+ def logger
258
+ @datastore_admin_stub.logger
259
+ end
260
+
241
261
  # Service calls
242
262
 
243
263
  ##
@@ -358,7 +378,7 @@ module Google
358
378
  @datastore_admin_stub.call_rpc :export_entities, request, options: options do |response, operation|
359
379
  response = ::Gapic::Operation.new response, @operations_client, options: options
360
380
  yield response, operation if block_given?
361
- return response
381
+ throw :response, response
362
382
  end
363
383
  rescue ::GRPC::BadStatus => e
364
384
  raise ::Google::Cloud::Error.from_error(e)
@@ -478,7 +498,7 @@ module Google
478
498
  @datastore_admin_stub.call_rpc :import_entities, request, options: options do |response, operation|
479
499
  response = ::Gapic::Operation.new response, @operations_client, options: options
480
500
  yield response, operation if block_given?
481
- return response
501
+ throw :response, response
482
502
  end
483
503
  rescue ::GRPC::BadStatus => e
484
504
  raise ::Google::Cloud::Error.from_error(e)
@@ -588,7 +608,7 @@ module Google
588
608
  @datastore_admin_stub.call_rpc :create_index, request, options: options do |response, operation|
589
609
  response = ::Gapic::Operation.new response, @operations_client, options: options
590
610
  yield response, operation if block_given?
591
- return response
611
+ throw :response, response
592
612
  end
593
613
  rescue ::GRPC::BadStatus => e
594
614
  raise ::Google::Cloud::Error.from_error(e)
@@ -697,7 +717,7 @@ module Google
697
717
  @datastore_admin_stub.call_rpc :delete_index, request, options: options do |response, operation|
698
718
  response = ::Gapic::Operation.new response, @operations_client, options: options
699
719
  yield response, operation if block_given?
700
- return response
720
+ throw :response, response
701
721
  end
702
722
  rescue ::GRPC::BadStatus => e
703
723
  raise ::Google::Cloud::Error.from_error(e)
@@ -788,7 +808,6 @@ module Google
788
808
 
789
809
  @datastore_admin_stub.call_rpc :get_index, request, options: options do |response, operation|
790
810
  yield response, operation if block_given?
791
- return response
792
811
  end
793
812
  rescue ::GRPC::BadStatus => e
794
813
  raise ::Google::Cloud::Error.from_error(e)
@@ -887,7 +906,7 @@ module Google
887
906
  @datastore_admin_stub.call_rpc :list_indexes, request, options: options do |response, operation|
888
907
  response = ::Gapic::PagedEnumerable.new @datastore_admin_stub, :list_indexes, request, response, operation, options
889
908
  yield response, operation if block_given?
890
- return response
909
+ throw :response, response
891
910
  end
892
911
  rescue ::GRPC::BadStatus => e
893
912
  raise ::Google::Cloud::Error.from_error(e)
@@ -937,6 +956,13 @@ module Google
937
956
  # * (`GRPC::Core::Channel`) a gRPC channel with included credentials
938
957
  # * (`GRPC::Core::ChannelCredentials`) a gRPC credentails object
939
958
  # * (`nil`) indicating no credentials
959
+ #
960
+ # Warning: If you accept a credential configuration (JSON file or Hash) from an
961
+ # external source for authentication to Google Cloud, you must validate it before
962
+ # providing it to a Google API client library. Providing an unvalidated credential
963
+ # configuration to Google APIs can compromise the security of your systems and data.
964
+ # For more information, refer to [Validate credential configurations from external
965
+ # sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials).
940
966
  # @return [::Object]
941
967
  # @!attribute [rw] scope
942
968
  # The OAuth scopes
@@ -976,6 +1002,11 @@ module Google
976
1002
  # default endpoint URL. The default value of nil uses the environment
977
1003
  # universe (usually the default "googleapis.com" universe).
978
1004
  # @return [::String,nil]
1005
+ # @!attribute [rw] logger
1006
+ # A custom logger to use for request/response debug logging, or the value
1007
+ # `:default` (the default) to construct a default logger, or `nil` to
1008
+ # explicitly disable logging.
1009
+ # @return [::Logger,:default,nil]
979
1010
  #
980
1011
  class Configuration
981
1012
  extend ::Gapic::Config
@@ -1000,6 +1031,7 @@ module Google
1000
1031
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
1001
1032
  config_attr :quota_project, nil, ::String, nil
1002
1033
  config_attr :universe_domain, nil, ::String, nil
1034
+ config_attr :logger, :default, ::Logger, nil, :default
1003
1035
 
1004
1036
  # @private
1005
1037
  def initialize parent_config = nil
@@ -125,14 +125,6 @@ module Google
125
125
  # Lists operations that match the specified filter in the request. If the
126
126
  # server doesn't support this method, it returns `UNIMPLEMENTED`.
127
127
  #
128
- # NOTE: the `name` binding allows API services to override the binding
129
- # to use different resource name schemes, such as `users/*/operations`. To
130
- # override the binding, API services can add a binding such as
131
- # `"/v1/{name=users/*}/operations"` to their service configuration.
132
- # For backwards compatibility, the default name includes the operations
133
- # collection id, however overriding users must ensure the name binding
134
- # is the parent resource, without the operations collection id.
135
- #
136
128
  # @overload list_operations(request, options = nil)
137
129
  # Pass arguments to `list_operations` via a request object, either of type
138
130
  # {::Google::Longrunning::ListOperationsRequest} or an equivalent Hash.
@@ -222,7 +214,7 @@ module Google
222
214
  wrap_lro_operation = ->(op_response) { ::Gapic::Operation.new op_response, @operations_client }
223
215
  response = ::Gapic::PagedEnumerable.new @operations_stub, :list_operations, request, response, operation, options, format_resource: wrap_lro_operation
224
216
  yield response, operation if block_given?
225
- return response
217
+ throw :response, response
226
218
  end
227
219
  rescue ::GRPC::BadStatus => e
228
220
  raise ::Google::Cloud::Error.from_error(e)
@@ -318,7 +310,7 @@ module Google
318
310
  @operations_stub.call_rpc :get_operation, request, options: options do |response, operation|
319
311
  response = ::Gapic::Operation.new response, @operations_client, options: options
320
312
  yield response, operation if block_given?
321
- return response
313
+ throw :response, response
322
314
  end
323
315
  rescue ::GRPC::BadStatus => e
324
316
  raise ::Google::Cloud::Error.from_error(e)
@@ -407,7 +399,6 @@ module Google
407
399
 
408
400
  @operations_stub.call_rpc :delete_operation, request, options: options do |response, operation|
409
401
  yield response, operation if block_given?
410
- return response
411
402
  end
412
403
  rescue ::GRPC::BadStatus => e
413
404
  raise ::Google::Cloud::Error.from_error(e)
@@ -422,8 +413,9 @@ module Google
422
413
  # other methods to check whether the cancellation succeeded or whether the
423
414
  # operation completed despite cancellation. On successful cancellation,
424
415
  # the operation is not deleted; instead, it becomes an operation with
425
- # an {::Google::Longrunning::Operation#error Operation.error} value with a {::Google::Rpc::Status#code google.rpc.Status.code} of 1,
426
- # corresponding to `Code.CANCELLED`.
416
+ # an {::Google::Longrunning::Operation#error Operation.error} value with a
417
+ # {::Google::Rpc::Status#code google.rpc.Status.code} of `1`, corresponding to
418
+ # `Code.CANCELLED`.
427
419
  #
428
420
  # @overload cancel_operation(request, options = nil)
429
421
  # Pass arguments to `cancel_operation` via a request object, either of type
@@ -502,7 +494,6 @@ module Google
502
494
 
503
495
  @operations_stub.call_rpc :cancel_operation, request, options: options do |response, operation|
504
496
  yield response, operation if block_given?
505
- return response
506
497
  end
507
498
  rescue ::GRPC::BadStatus => e
508
499
  raise ::Google::Cloud::Error.from_error(e)
@@ -600,7 +591,7 @@ module Google
600
591
  @operations_stub.call_rpc :wait_operation, request, options: options do |response, operation|
601
592
  response = ::Gapic::Operation.new response, @operations_client, options: options
602
593
  yield response, operation if block_given?
603
- return response
594
+ throw :response, response
604
595
  end
605
596
  rescue ::GRPC::BadStatus => e
606
597
  raise ::Google::Cloud::Error.from_error(e)
@@ -650,6 +641,13 @@ module Google
650
641
  # * (`GRPC::Core::Channel`) a gRPC channel with included credentials
651
642
  # * (`GRPC::Core::ChannelCredentials`) a gRPC credentails object
652
643
  # * (`nil`) indicating no credentials
644
+ #
645
+ # Warning: If you accept a credential configuration (JSON file or Hash) from an
646
+ # external source for authentication to Google Cloud, you must validate it before
647
+ # providing it to a Google API client library. Providing an unvalidated credential
648
+ # configuration to Google APIs can compromise the security of your systems and data.
649
+ # For more information, refer to [Validate credential configurations from external
650
+ # sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials).
653
651
  # @return [::Object]
654
652
  # @!attribute [rw] scope
655
653
  # The OAuth scopes
@@ -689,6 +687,11 @@ module Google
689
687
  # default endpoint URL. The default value of nil uses the environment
690
688
  # universe (usually the default "googleapis.com" universe).
691
689
  # @return [::String,nil]
690
+ # @!attribute [rw] logger
691
+ # A custom logger to use for request/response debug logging, or the value
692
+ # `:default` (the default) to construct a default logger, or `nil` to
693
+ # explicitly disable logging.
694
+ # @return [::Logger,:default,nil]
692
695
  #
693
696
  class Configuration
694
697
  extend ::Gapic::Config
@@ -713,6 +716,7 @@ module Google
713
716
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
714
717
  config_attr :quota_project, nil, ::String, nil
715
718
  config_attr :universe_domain, nil, ::String, nil
719
+ config_attr :logger, :default, ::Logger, nil, :default
716
720
 
717
721
  # @private
718
722
  def initialize parent_config = nil
@@ -220,8 +220,19 @@ module Google
220
220
  endpoint: @config.endpoint,
221
221
  endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
222
222
  universe_domain: @config.universe_domain,
223
- credentials: credentials
223
+ credentials: credentials,
224
+ logger: @config.logger
224
225
  )
226
+
227
+ @datastore_admin_stub.logger(stub: true)&.info do |entry|
228
+ entry.set_system_name
229
+ entry.set_service
230
+ entry.message = "Created client for #{entry.service}"
231
+ entry.set_credentials_fields credentials
232
+ entry.set "customEndpoint", @config.endpoint if @config.endpoint
233
+ entry.set "defaultTimeout", @config.timeout if @config.timeout
234
+ entry.set "quotaProject", @quota_project_id if @quota_project_id
235
+ end
225
236
  end
226
237
 
227
238
  ##
@@ -231,6 +242,15 @@ module Google
231
242
  #
232
243
  attr_reader :operations_client
233
244
 
245
+ ##
246
+ # The logger used for request/response debug logging.
247
+ #
248
+ # @return [Logger]
249
+ #
250
+ def logger
251
+ @datastore_admin_stub.logger
252
+ end
253
+
234
254
  # Service calls
235
255
 
236
256
  ##
@@ -344,7 +364,7 @@ module Google
344
364
  @datastore_admin_stub.export_entities request, options do |result, operation|
345
365
  result = ::Gapic::Operation.new result, @operations_client, options: options
346
366
  yield result, operation if block_given?
347
- return result
367
+ throw :response, result
348
368
  end
349
369
  rescue ::Gapic::Rest::Error => e
350
370
  raise ::Google::Cloud::Error.from_error(e)
@@ -457,7 +477,7 @@ module Google
457
477
  @datastore_admin_stub.import_entities request, options do |result, operation|
458
478
  result = ::Gapic::Operation.new result, @operations_client, options: options
459
479
  yield result, operation if block_given?
460
- return result
480
+ throw :response, result
461
481
  end
462
482
  rescue ::Gapic::Rest::Error => e
463
483
  raise ::Google::Cloud::Error.from_error(e)
@@ -560,7 +580,7 @@ module Google
560
580
  @datastore_admin_stub.create_index request, options do |result, operation|
561
581
  result = ::Gapic::Operation.new result, @operations_client, options: options
562
582
  yield result, operation if block_given?
563
- return result
583
+ throw :response, result
564
584
  end
565
585
  rescue ::Gapic::Rest::Error => e
566
586
  raise ::Google::Cloud::Error.from_error(e)
@@ -659,7 +679,7 @@ module Google
659
679
  @datastore_admin_stub.delete_index request, options do |result, operation|
660
680
  result = ::Gapic::Operation.new result, @operations_client, options: options
661
681
  yield result, operation if block_given?
662
- return result
682
+ throw :response, result
663
683
  end
664
684
  rescue ::Gapic::Rest::Error => e
665
685
  raise ::Google::Cloud::Error.from_error(e)
@@ -740,7 +760,6 @@ module Google
740
760
 
741
761
  @datastore_admin_stub.get_index request, options do |result, operation|
742
762
  yield result, operation if block_given?
743
- return result
744
763
  end
745
764
  rescue ::Gapic::Rest::Error => e
746
765
  raise ::Google::Cloud::Error.from_error(e)
@@ -832,7 +851,7 @@ module Google
832
851
  @datastore_admin_stub.list_indexes request, options do |result, operation|
833
852
  result = ::Gapic::Rest::PagedEnumerable.new @datastore_admin_stub, :list_indexes, "indexes", request, result, options
834
853
  yield result, operation if block_given?
835
- return result
854
+ throw :response, result
836
855
  end
837
856
  rescue ::Gapic::Rest::Error => e
838
857
  raise ::Google::Cloud::Error.from_error(e)
@@ -880,6 +899,13 @@ module Google
880
899
  # * (`Signet::OAuth2::Client`) A signet oauth2 client object
881
900
  # (see the [signet docs](https://rubydoc.info/gems/signet/Signet/OAuth2/Client))
882
901
  # * (`nil`) indicating no credentials
902
+ #
903
+ # Warning: If you accept a credential configuration (JSON file or Hash) from an
904
+ # external source for authentication to Google Cloud, you must validate it before
905
+ # providing it to a Google API client library. Providing an unvalidated credential
906
+ # configuration to Google APIs can compromise the security of your systems and data.
907
+ # For more information, refer to [Validate credential configurations from external
908
+ # sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials).
883
909
  # @return [::Object]
884
910
  # @!attribute [rw] scope
885
911
  # The OAuth scopes
@@ -912,6 +938,11 @@ module Google
912
938
  # default endpoint URL. The default value of nil uses the environment
913
939
  # universe (usually the default "googleapis.com" universe).
914
940
  # @return [::String,nil]
941
+ # @!attribute [rw] logger
942
+ # A custom logger to use for request/response debug logging, or the value
943
+ # `:default` (the default) to construct a default logger, or `nil` to
944
+ # explicitly disable logging.
945
+ # @return [::Logger,:default,nil]
915
946
  #
916
947
  class Configuration
917
948
  extend ::Gapic::Config
@@ -933,6 +964,7 @@ module Google
933
964
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
934
965
  config_attr :quota_project, nil, ::String, nil
935
966
  config_attr :universe_domain, nil, ::String, nil
967
+ config_attr :logger, :default, ::Logger, nil, :default
936
968
 
937
969
  # @private
938
970
  def initialize parent_config = nil
@@ -116,14 +116,6 @@ module Google
116
116
  # Lists operations that match the specified filter in the request. If the
117
117
  # server doesn't support this method, it returns `UNIMPLEMENTED`.
118
118
  #
119
- # NOTE: the `name` binding allows API services to override the binding
120
- # to use different resource name schemes, such as `users/*/operations`. To
121
- # override the binding, API services can add a binding such as
122
- # `"/v1/{name=users/*}/operations"` to their service configuration.
123
- # For backwards compatibility, the default name includes the operations
124
- # collection id, however overriding users must ensure the name binding
125
- # is the parent resource, without the operations collection id.
126
- #
127
119
  # @overload list_operations(request, options = nil)
128
120
  # Pass arguments to `list_operations` via a request object, either of type
129
121
  # {::Google::Longrunning::ListOperationsRequest} or an equivalent Hash.
@@ -205,7 +197,7 @@ module Google
205
197
  @operations_stub.list_operations request, options do |result, operation|
206
198
  result = ::Gapic::Rest::PagedEnumerable.new @operations_stub, :list_operations, "operations", request, result, options
207
199
  yield result, operation if block_given?
208
- return result
200
+ throw :response, result
209
201
  end
210
202
  rescue ::Gapic::Rest::Error => e
211
203
  raise ::Google::Cloud::Error.from_error(e)
@@ -294,7 +286,7 @@ module Google
294
286
  @operations_stub.get_operation request, options do |result, operation|
295
287
  result = ::Gapic::Operation.new result, @operations_client, options: options
296
288
  yield result, operation if block_given?
297
- return result
289
+ throw :response, result
298
290
  end
299
291
  rescue ::Gapic::Rest::Error => e
300
292
  raise ::Google::Cloud::Error.from_error(e)
@@ -376,7 +368,6 @@ module Google
376
368
 
377
369
  @operations_stub.delete_operation request, options do |result, operation|
378
370
  yield result, operation if block_given?
379
- return result
380
371
  end
381
372
  rescue ::Gapic::Rest::Error => e
382
373
  raise ::Google::Cloud::Error.from_error(e)
@@ -391,8 +382,9 @@ module Google
391
382
  # other methods to check whether the cancellation succeeded or whether the
392
383
  # operation completed despite cancellation. On successful cancellation,
393
384
  # the operation is not deleted; instead, it becomes an operation with
394
- # an {::Google::Longrunning::Operation#error Operation.error} value with a {::Google::Rpc::Status#code google.rpc.Status.code} of 1,
395
- # corresponding to `Code.CANCELLED`.
385
+ # an {::Google::Longrunning::Operation#error Operation.error} value with a
386
+ # {::Google::Rpc::Status#code google.rpc.Status.code} of `1`, corresponding to
387
+ # `Code.CANCELLED`.
396
388
  #
397
389
  # @overload cancel_operation(request, options = nil)
398
390
  # Pass arguments to `cancel_operation` via a request object, either of type
@@ -464,7 +456,6 @@ module Google
464
456
 
465
457
  @operations_stub.cancel_operation request, options do |result, operation|
466
458
  yield result, operation if block_given?
467
- return result
468
459
  end
469
460
  rescue ::Gapic::Rest::Error => e
470
461
  raise ::Google::Cloud::Error.from_error(e)
@@ -512,6 +503,13 @@ module Google
512
503
  # * (`Signet::OAuth2::Client`) A signet oauth2 client object
513
504
  # (see the [signet docs](https://rubydoc.info/gems/signet/Signet/OAuth2/Client))
514
505
  # * (`nil`) indicating no credentials
506
+ #
507
+ # Warning: If you accept a credential configuration (JSON file or Hash) from an
508
+ # external source for authentication to Google Cloud, you must validate it before
509
+ # providing it to a Google API client library. Providing an unvalidated credential
510
+ # configuration to Google APIs can compromise the security of your systems and data.
511
+ # For more information, refer to [Validate credential configurations from external
512
+ # sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials).
515
513
  # @return [::Object]
516
514
  # @!attribute [rw] scope
517
515
  # The OAuth scopes
@@ -544,6 +542,11 @@ module Google
544
542
  # default endpoint URL. The default value of nil uses the environment
545
543
  # universe (usually the default "googleapis.com" universe).
546
544
  # @return [::String,nil]
545
+ # @!attribute [rw] logger
546
+ # A custom logger to use for request/response debug logging, or the value
547
+ # `:default` (the default) to construct a default logger, or `nil` to
548
+ # explicitly disable logging.
549
+ # @return [::Logger,:default,nil]
547
550
  #
548
551
  class Configuration
549
552
  extend ::Gapic::Config
@@ -565,6 +568,7 @@ module Google
565
568
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
566
569
  config_attr :quota_project, nil, ::String, nil
567
570
  config_attr :universe_domain, nil, ::String, nil
571
+ config_attr :logger, :default, ::Logger, nil, :default
568
572
 
569
573
  # @private
570
574
  def initialize parent_config = nil
@@ -684,16 +688,18 @@ module Google
684
688
 
685
689
  response = @client_stub.make_http_request(
686
690
  verb,
687
- uri: uri,
688
- body: body || "",
689
- params: query_string_params,
691
+ uri: uri,
692
+ body: body || "",
693
+ params: query_string_params,
694
+ method_name: "list_operations",
690
695
  options: options
691
696
  )
692
697
  operation = ::Gapic::Rest::TransportOperation.new response
693
698
  result = ::Google::Longrunning::ListOperationsResponse.decode_json response.body, ignore_unknown_fields: true
694
-
695
- yield result, operation if block_given?
696
- result
699
+ catch :response do
700
+ yield result, operation if block_given?
701
+ result
702
+ end
697
703
  end
698
704
 
699
705
  ##
@@ -722,16 +728,18 @@ module Google
722
728
 
723
729
  response = @client_stub.make_http_request(
724
730
  verb,
725
- uri: uri,
726
- body: body || "",
727
- params: query_string_params,
731
+ uri: uri,
732
+ body: body || "",
733
+ params: query_string_params,
734
+ method_name: "get_operation",
728
735
  options: options
729
736
  )
730
737
  operation = ::Gapic::Rest::TransportOperation.new response
731
738
  result = ::Google::Longrunning::Operation.decode_json response.body, ignore_unknown_fields: true
732
-
733
- yield result, operation if block_given?
734
- result
739
+ catch :response do
740
+ yield result, operation if block_given?
741
+ result
742
+ end
735
743
  end
736
744
 
737
745
  ##
@@ -760,16 +768,18 @@ module Google
760
768
 
761
769
  response = @client_stub.make_http_request(
762
770
  verb,
763
- uri: uri,
764
- body: body || "",
765
- params: query_string_params,
771
+ uri: uri,
772
+ body: body || "",
773
+ params: query_string_params,
774
+ method_name: "delete_operation",
766
775
  options: options
767
776
  )
768
777
  operation = ::Gapic::Rest::TransportOperation.new response
769
778
  result = ::Google::Protobuf::Empty.decode_json response.body, ignore_unknown_fields: true
770
-
771
- yield result, operation if block_given?
772
- result
779
+ catch :response do
780
+ yield result, operation if block_given?
781
+ result
782
+ end
773
783
  end
774
784
 
775
785
  ##
@@ -798,16 +808,18 @@ module Google
798
808
 
799
809
  response = @client_stub.make_http_request(
800
810
  verb,
801
- uri: uri,
802
- body: body || "",
803
- params: query_string_params,
811
+ uri: uri,
812
+ body: body || "",
813
+ params: query_string_params,
814
+ method_name: "cancel_operation",
804
815
  options: options
805
816
  )
806
817
  operation = ::Gapic::Rest::TransportOperation.new response
807
818
  result = ::Google::Protobuf::Empty.decode_json response.body, ignore_unknown_fields: true
808
-
809
- yield result, operation if block_given?
810
- result
819
+ catch :response do
820
+ yield result, operation if block_given?
821
+ result
822
+ end
811
823
  end
812
824
 
813
825
  ##
@@ -31,7 +31,8 @@ module Google
31
31
  # including transcoding, making the REST call, and deserialing the response.
32
32
  #
33
33
  class ServiceStub
34
- def initialize endpoint:, endpoint_template:, universe_domain:, credentials:
34
+ # @private
35
+ def initialize endpoint:, endpoint_template:, universe_domain:, credentials:, logger:
35
36
  # These require statements are intentionally placed here to initialize
36
37
  # the REST modules only when it's required.
37
38
  require "gapic/rest"
@@ -41,7 +42,9 @@ module Google
41
42
  universe_domain: universe_domain,
42
43
  credentials: credentials,
43
44
  numeric_enums: true,
44
- raise_faraday_errors: false
45
+ service_name: self.class,
46
+ raise_faraday_errors: false,
47
+ logger: logger
45
48
  end
46
49
 
47
50
  ##
@@ -62,6 +65,15 @@ module Google
62
65
  @client_stub.endpoint
63
66
  end
64
67
 
68
+ ##
69
+ # The logger used for request/response debug logging.
70
+ #
71
+ # @return [Logger]
72
+ #
73
+ def logger stub: false
74
+ stub ? @client_stub.stub_logger : @client_stub.logger
75
+ end
76
+
65
77
  ##
66
78
  # Baseline implementation for the export_entities REST call
67
79
  #
@@ -88,16 +100,18 @@ module Google
88
100
 
89
101
  response = @client_stub.make_http_request(
90
102
  verb,
91
- uri: uri,
92
- body: body || "",
93
- params: query_string_params,
103
+ uri: uri,
104
+ body: body || "",
105
+ params: query_string_params,
106
+ method_name: "export_entities",
94
107
  options: options
95
108
  )
96
109
  operation = ::Gapic::Rest::TransportOperation.new response
97
110
  result = ::Google::Longrunning::Operation.decode_json response.body, ignore_unknown_fields: true
98
-
99
- yield result, operation if block_given?
100
- result
111
+ catch :response do
112
+ yield result, operation if block_given?
113
+ result
114
+ end
101
115
  end
102
116
 
103
117
  ##
@@ -126,16 +140,18 @@ module Google
126
140
 
127
141
  response = @client_stub.make_http_request(
128
142
  verb,
129
- uri: uri,
130
- body: body || "",
131
- params: query_string_params,
143
+ uri: uri,
144
+ body: body || "",
145
+ params: query_string_params,
146
+ method_name: "import_entities",
132
147
  options: options
133
148
  )
134
149
  operation = ::Gapic::Rest::TransportOperation.new response
135
150
  result = ::Google::Longrunning::Operation.decode_json response.body, ignore_unknown_fields: true
136
-
137
- yield result, operation if block_given?
138
- result
151
+ catch :response do
152
+ yield result, operation if block_given?
153
+ result
154
+ end
139
155
  end
140
156
 
141
157
  ##
@@ -164,16 +180,18 @@ module Google
164
180
 
165
181
  response = @client_stub.make_http_request(
166
182
  verb,
167
- uri: uri,
168
- body: body || "",
169
- params: query_string_params,
183
+ uri: uri,
184
+ body: body || "",
185
+ params: query_string_params,
186
+ method_name: "create_index",
170
187
  options: options
171
188
  )
172
189
  operation = ::Gapic::Rest::TransportOperation.new response
173
190
  result = ::Google::Longrunning::Operation.decode_json response.body, ignore_unknown_fields: true
174
-
175
- yield result, operation if block_given?
176
- result
191
+ catch :response do
192
+ yield result, operation if block_given?
193
+ result
194
+ end
177
195
  end
178
196
 
179
197
  ##
@@ -202,16 +220,18 @@ module Google
202
220
 
203
221
  response = @client_stub.make_http_request(
204
222
  verb,
205
- uri: uri,
206
- body: body || "",
207
- params: query_string_params,
223
+ uri: uri,
224
+ body: body || "",
225
+ params: query_string_params,
226
+ method_name: "delete_index",
208
227
  options: options
209
228
  )
210
229
  operation = ::Gapic::Rest::TransportOperation.new response
211
230
  result = ::Google::Longrunning::Operation.decode_json response.body, ignore_unknown_fields: true
212
-
213
- yield result, operation if block_given?
214
- result
231
+ catch :response do
232
+ yield result, operation if block_given?
233
+ result
234
+ end
215
235
  end
216
236
 
217
237
  ##
@@ -240,16 +260,18 @@ module Google
240
260
 
241
261
  response = @client_stub.make_http_request(
242
262
  verb,
243
- uri: uri,
244
- body: body || "",
245
- params: query_string_params,
263
+ uri: uri,
264
+ body: body || "",
265
+ params: query_string_params,
266
+ method_name: "get_index",
246
267
  options: options
247
268
  )
248
269
  operation = ::Gapic::Rest::TransportOperation.new response
249
270
  result = ::Google::Cloud::Datastore::Admin::V1::Index.decode_json response.body, ignore_unknown_fields: true
250
-
251
- yield result, operation if block_given?
252
- result
271
+ catch :response do
272
+ yield result, operation if block_given?
273
+ result
274
+ end
253
275
  end
254
276
 
255
277
  ##
@@ -278,16 +300,18 @@ module Google
278
300
 
279
301
  response = @client_stub.make_http_request(
280
302
  verb,
281
- uri: uri,
282
- body: body || "",
283
- params: query_string_params,
303
+ uri: uri,
304
+ body: body || "",
305
+ params: query_string_params,
306
+ method_name: "list_indexes",
284
307
  options: options
285
308
  )
286
309
  operation = ::Gapic::Rest::TransportOperation.new response
287
310
  result = ::Google::Cloud::Datastore::Admin::V1::ListIndexesResponse.decode_json response.body, ignore_unknown_fields: true
288
-
289
- yield result, operation if block_given?
290
- result
311
+ catch :response do
312
+ yield result, operation if block_given?
313
+ result
314
+ end
291
315
  end
292
316
 
293
317
  ##
@@ -22,7 +22,7 @@ module Google
22
22
  module Datastore
23
23
  module Admin
24
24
  module V1
25
- VERSION = "1.0.1"
25
+ VERSION = "1.2.0"
26
26
  end
27
27
  end
28
28
  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
@@ -45,9 +45,13 @@ module Google
45
45
  # @!attribute [rw] prepare_step_details
46
46
  # @return [::Google::Cloud::Datastore::Admin::V1::MigrationProgressEvent::PrepareStepDetails]
47
47
  # Details for the `PREPARE` step.
48
+ #
49
+ # Note: The following fields are mutually exclusive: `prepare_step_details`, `redirect_writes_step_details`. If a field in that set is populated, all other fields in the set will automatically be cleared.
48
50
  # @!attribute [rw] redirect_writes_step_details
49
51
  # @return [::Google::Cloud::Datastore::Admin::V1::MigrationProgressEvent::RedirectWritesStepDetails]
50
52
  # Details for the `REDIRECT_WRITES` step.
53
+ #
54
+ # Note: The following fields are mutually exclusive: `redirect_writes_step_details`, `prepare_step_details`. If a field in that set is populated, all other fields in the set will automatically be cleared.
51
55
  class MigrationProgressEvent
52
56
  include ::Google::Protobuf::MessageExts
53
57
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -40,9 +40,11 @@ module Google
40
40
  # @!attribute [rw] error
41
41
  # @return [::Google::Rpc::Status]
42
42
  # The error result of the operation in case of failure or cancellation.
43
+ #
44
+ # Note: The following fields are mutually exclusive: `error`, `response`. If a field in that set is populated, all other fields in the set will automatically be cleared.
43
45
  # @!attribute [rw] response
44
46
  # @return [::Google::Protobuf::Any]
45
- # The normal response of the operation in case of success. If the original
47
+ # The normal, successful response of the operation. If the original
46
48
  # method returns no data on success, such as `Delete`, the response is
47
49
  # `google.protobuf.Empty`. If the original method is standard
48
50
  # `Get`/`Create`/`Update`, the response should be the resource. For other
@@ -50,12 +52,15 @@ module Google
50
52
  # is the original method name. For example, if the original method name
51
53
  # is `TakeSnapshot()`, the inferred response type is
52
54
  # `TakeSnapshotResponse`.
55
+ #
56
+ # Note: The following fields are mutually exclusive: `response`, `error`. If a field in that set is populated, all other fields in the set will automatically be cleared.
53
57
  class Operation
54
58
  include ::Google::Protobuf::MessageExts
55
59
  extend ::Google::Protobuf::MessageExts::ClassMethods
56
60
  end
57
61
 
58
- # The request message for Operations.GetOperation.
62
+ # The request message for
63
+ # Operations.GetOperation.
59
64
  # @!attribute [rw] name
60
65
  # @return [::String]
61
66
  # The name of the operation resource.
@@ -64,7 +69,8 @@ module Google
64
69
  extend ::Google::Protobuf::MessageExts::ClassMethods
65
70
  end
66
71
 
67
- # The request message for Operations.ListOperations.
72
+ # The request message for
73
+ # Operations.ListOperations.
68
74
  # @!attribute [rw] name
69
75
  # @return [::String]
70
76
  # The name of the operation's parent resource.
@@ -82,7 +88,8 @@ module Google
82
88
  extend ::Google::Protobuf::MessageExts::ClassMethods
83
89
  end
84
90
 
85
- # The response message for Operations.ListOperations.
91
+ # The response message for
92
+ # Operations.ListOperations.
86
93
  # @!attribute [rw] operations
87
94
  # @return [::Array<::Google::Longrunning::Operation>]
88
95
  # A list of operations that matches the specified filter in the request.
@@ -94,7 +101,8 @@ module Google
94
101
  extend ::Google::Protobuf::MessageExts::ClassMethods
95
102
  end
96
103
 
97
- # The request message for Operations.CancelOperation.
104
+ # The request message for
105
+ # Operations.CancelOperation.
98
106
  # @!attribute [rw] name
99
107
  # @return [::String]
100
108
  # The name of the operation resource to be cancelled.
@@ -103,7 +111,8 @@ module Google
103
111
  extend ::Google::Protobuf::MessageExts::ClassMethods
104
112
  end
105
113
 
106
- # The request message for Operations.DeleteOperation.
114
+ # The request message for
115
+ # Operations.DeleteOperation.
107
116
  # @!attribute [rw] name
108
117
  # @return [::String]
109
118
  # The name of the operation resource to be deleted.
@@ -112,7 +121,8 @@ module Google
112
121
  extend ::Google::Protobuf::MessageExts::ClassMethods
113
122
  end
114
123
 
115
- # The request message for Operations.WaitOperation.
124
+ # The request message for
125
+ # Operations.WaitOperation.
116
126
  # @!attribute [rw] name
117
127
  # @return [::String]
118
128
  # The name of the operation resource to wait on.
@@ -130,13 +140,12 @@ module Google
130
140
  #
131
141
  # Example:
132
142
  #
133
- # rpc LongRunningRecognize(LongRunningRecognizeRequest)
134
- # returns (google.longrunning.Operation) {
135
- # option (google.longrunning.operation_info) = {
136
- # response_type: "LongRunningRecognizeResponse"
137
- # metadata_type: "LongRunningRecognizeMetadata"
138
- # };
139
- # }
143
+ # rpc Export(ExportRequest) returns (google.longrunning.Operation) {
144
+ # option (google.longrunning.operation_info) = {
145
+ # response_type: "ExportResponse"
146
+ # metadata_type: "ExportMetadata"
147
+ # };
148
+ # }
140
149
  # @!attribute [rw] response_type
141
150
  # @return [::String]
142
151
  # Required. The message name of the primary return type for this
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-cloud-datastore-admin-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
@@ -92,7 +91,6 @@ homepage: https://github.com/googleapis/google-cloud-ruby
92
91
  licenses:
93
92
  - Apache-2.0
94
93
  metadata: {}
95
- post_install_message:
96
94
  rdoc_options: []
97
95
  require_paths:
98
96
  - lib
@@ -100,15 +98,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
100
98
  requirements:
101
99
  - - ">="
102
100
  - !ruby/object:Gem::Version
103
- version: '2.7'
101
+ version: '3.0'
104
102
  required_rubygems_version: !ruby/object:Gem::Requirement
105
103
  requirements:
106
104
  - - ">="
107
105
  - !ruby/object:Gem::Version
108
106
  version: '0'
109
107
  requirements: []
110
- rubygems_version: 3.5.6
111
- signing_key:
108
+ rubygems_version: 3.6.2
112
109
  specification_version: 4
113
110
  summary: Accesses the schemaless NoSQL database to provide fully managed, robust,
114
111
  scalable storage for your application.