google-cloud-memcache-v1beta2 0.1.2 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -33,3 +33,6 @@ module Google
33
33
  end
34
34
  end
35
35
  end
36
+
37
+ helper_path = ::File.join __dir__, "v1beta2", "_helpers.rb"
38
+ require "google/cloud/memcache/v1beta2/_helpers" if ::File.file? helper_path
@@ -45,7 +45,7 @@ module Google
45
45
  # * As such, Memcached instances are resources of the form:
46
46
  # `/projects/{project_id}/locations/{location_id}/instances/{instance_id}`
47
47
  #
48
- # Note that location_id must be refering to a GCP `region`; for example:
48
+ # Note that location_id must be a GCP `region`; for example:
49
49
  # * `projects/my-memcached-project/locations/us-central1/instances/my-memcached`
50
50
  #
51
51
  # To load this service and instantiate a client:
@@ -40,7 +40,7 @@ module Google
40
40
  # * As such, Memcached instances are resources of the form:
41
41
  # `/projects/{project_id}/locations/{location_id}/instances/{instance_id}`
42
42
  #
43
- # Note that location_id must be refering to a GCP `region`; for example:
43
+ # Note that location_id must be a GCP `region`; for example:
44
44
  # * `projects/my-memcached-project/locations/us-central1/instances/my-memcached`
45
45
  #
46
46
  class Client
@@ -74,7 +74,7 @@ module Google
74
74
  parent_config = while namespace.any?
75
75
  parent_name = namespace.join "::"
76
76
  parent_const = const_get parent_name
77
- break parent_const.configure if parent_const&.respond_to? :configure
77
+ break parent_const.configure if parent_const.respond_to? :configure
78
78
  namespace.pop
79
79
  end
80
80
  default_config = Client::Configuration.new parent_config
@@ -93,6 +93,8 @@ module Google
93
93
 
94
94
  default_config.rpcs.apply_parameters.timeout = 1200.0
95
95
 
96
+ default_config.rpcs.apply_software_update.timeout = 1200.0
97
+
96
98
  default_config
97
99
  end
98
100
  yield @configure if block_given?
@@ -154,7 +156,13 @@ module Google
154
156
 
155
157
  # Create credentials
156
158
  credentials = @config.credentials
157
- credentials ||= Credentials.default scope: @config.scope
159
+ # Use self-signed JWT if the scope and endpoint are unchanged from default,
160
+ # but only if the default endpoint does not have a region prefix.
161
+ enable_self_signed_jwt = @config.scope == Client.configure.scope &&
162
+ @config.endpoint == Client.configure.endpoint &&
163
+ !@config.endpoint.split(".").first.include?("-")
164
+ credentials ||= Credentials.default scope: @config.scope,
165
+ enable_self_signed_jwt: enable_self_signed_jwt
158
166
  if credentials.is_a?(String) || credentials.is_a?(Hash)
159
167
  credentials = Credentials.new credentials, scope: @config.scope
160
168
  end
@@ -185,7 +193,7 @@ module Google
185
193
  # Service calls
186
194
 
187
195
  ##
188
- # Lists Instances in a given project and location.
196
+ # Lists Instances in a given location.
189
197
  #
190
198
  # @overload list_instances(request, options = nil)
191
199
  # Pass arguments to `list_instances` via a request object, either of type
@@ -210,16 +218,15 @@ module Google
210
218
  # The maximum number of items to return.
211
219
  #
212
220
  # If not specified, a default value of 1000 will be used by the service.
213
- # Regardless of the page_size value, the response may include a partial list
214
- # and a caller should only rely on response's
215
- # [next_page_token][CloudMemcache.ListInstancesResponse.next_page_token]
221
+ # Regardless of the `page_size` value, the response may include a partial
222
+ # list and a caller should only rely on response's
223
+ # {::Google::Cloud::Memcache::V1beta2::ListInstancesResponse#next_page_token `next_page_token`}
216
224
  # to determine if there are more instances left to be queried.
217
225
  # @param page_token [::String]
218
- # The next_page_token value returned from a previous List request,
219
- # if any.
226
+ # The `next_page_token` value returned from a previous List request, if any.
220
227
  # @param filter [::String]
221
228
  # List filter. For example, exclude all Memcached instances with name as
222
- # my-instance by specifying "name != my-instance".
229
+ # my-instance by specifying `"name != my-instance"`.
223
230
  # @param order_by [::String]
224
231
  # Sort results. Supported values are "name", "name desc" or "" (unsorted).
225
232
  #
@@ -338,7 +345,7 @@ module Google
338
345
  end
339
346
 
340
347
  ##
341
- # Creates a new Instance in a given project and location.
348
+ # Creates a new Instance in a given location.
342
349
  #
343
350
  # @overload create_instance(request, options = nil)
344
351
  # Pass arguments to `create_instance` via a request object, either of type
@@ -367,7 +374,9 @@ module Google
367
374
  # * Must start with a letter.
368
375
  # * Must be between 1-40 characters.
369
376
  # * Must end with a number or a letter.
370
- # * Must be unique within the user project / location
377
+ # * Must be unique within the user project / location.
378
+ #
379
+ # If any of the above are not met, the API raises an invalid argument error.
371
380
  # @param resource [::Google::Cloud::Memcache::V1beta2::Instance, ::Hash]
372
381
  # Required. A Memcached [Instance] resource
373
382
  #
@@ -437,7 +446,7 @@ module Google
437
446
  #
438
447
  # @param update_mask [::Google::Protobuf::FieldMask, ::Hash]
439
448
  # Required. Mask of fields to update.
440
- # * `displayName`
449
+ # * `displayName`
441
450
  # @param resource [::Google::Cloud::Memcache::V1beta2::Instance, ::Hash]
442
451
  # Required. A Memcached [Instance] resource.
443
452
  # Only fields specified in update_mask are updated.
@@ -489,9 +498,10 @@ module Google
489
498
  end
490
499
 
491
500
  ##
492
- # Updates the defined Memcached Parameters for an existing Instance.
501
+ # Updates the defined Memcached parameters for an existing instance.
493
502
  # This method only stages the parameters, it must be followed by
494
- # ApplyParameters to apply the parameters to nodes of the Memcached Instance.
503
+ # `ApplyParameters` to apply the parameters to nodes of the Memcached
504
+ # instance.
495
505
  #
496
506
  # @overload update_parameters(request, options = nil)
497
507
  # Pass arguments to `update_parameters` via a request object, either of type
@@ -581,7 +591,7 @@ module Google
581
591
  # the default parameter values, pass an empty Hash as a request object (see above).
582
592
  #
583
593
  # @param name [::String]
584
- # Memcached instance resource name in the format:
594
+ # Required. Memcached instance resource name in the format:
585
595
  # `projects/{project_id}/locations/{location_id}/instances/{instance_id}`
586
596
  # where `location_id` refers to a GCP region
587
597
  #
@@ -632,8 +642,8 @@ module Google
632
642
  end
633
643
 
634
644
  ##
635
- # ApplyParameters will update current set of Parameters to the set of
636
- # specified nodes of the Memcached Instance.
645
+ # `ApplyParameters` restarts the set of specified nodes in order to update
646
+ # them to the current set of parameters for the Memcached Instance.
637
647
  #
638
648
  # @overload apply_parameters(request, options = nil)
639
649
  # Pass arguments to `apply_parameters` via a request object, either of type
@@ -654,11 +664,11 @@ module Google
654
664
  # Required. Resource name of the Memcached instance for which parameter group updates
655
665
  # should be applied.
656
666
  # @param node_ids [::Array<::String>]
657
- # Nodes to which we should apply the instance-level parameter group.
667
+ # Nodes to which the instance-level parameter group is applied.
658
668
  # @param apply_all [::Boolean]
659
669
  # Whether to apply instance-level parameter group to all nodes. If set to
660
- # true, will explicitly restrict users from specifying any nodes, and apply
661
- # parameter group updates to all nodes within the instance.
670
+ # true, users are restricted from specifying individual nodes, and
671
+ # `ApplyParameters` updates all nodes within the instance.
662
672
  #
663
673
  # @yield [response, operation] Access the result along with the RPC operation
664
674
  # @yieldparam response [::Gapic::Operation]
@@ -706,6 +716,81 @@ module Google
706
716
  raise ::Google::Cloud::Error.from_error(e)
707
717
  end
708
718
 
719
+ ##
720
+ # Updates software on the selected nodes of the Instance.
721
+ #
722
+ # @overload apply_software_update(request, options = nil)
723
+ # Pass arguments to `apply_software_update` via a request object, either of type
724
+ # {::Google::Cloud::Memcache::V1beta2::ApplySoftwareUpdateRequest} or an equivalent Hash.
725
+ #
726
+ # @param request [::Google::Cloud::Memcache::V1beta2::ApplySoftwareUpdateRequest, ::Hash]
727
+ # A request object representing the call parameters. Required. To specify no
728
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
729
+ # @param options [::Gapic::CallOptions, ::Hash]
730
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
731
+ #
732
+ # @overload apply_software_update(instance: nil, node_ids: nil, apply_all: nil)
733
+ # Pass arguments to `apply_software_update` via keyword arguments. Note that at
734
+ # least one keyword argument is required. To specify no parameters, or to keep all
735
+ # the default parameter values, pass an empty Hash as a request object (see above).
736
+ #
737
+ # @param instance [::String]
738
+ # Required. Resource name of the Memcached instance for which software update should be
739
+ # applied.
740
+ # @param node_ids [::Array<::String>]
741
+ # Nodes to which we should apply the update to. Note all the selected nodes
742
+ # are updated in parallel.
743
+ # @param apply_all [::Boolean]
744
+ # Whether to apply the update to all nodes. If set to
745
+ # true, will explicitly restrict users from specifying any nodes, and apply
746
+ # software update to all nodes (where applicable) within the instance.
747
+ #
748
+ # @yield [response, operation] Access the result along with the RPC operation
749
+ # @yieldparam response [::Gapic::Operation]
750
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
751
+ #
752
+ # @return [::Gapic::Operation]
753
+ #
754
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
755
+ #
756
+ def apply_software_update request, options = nil
757
+ raise ::ArgumentError, "request must be provided" if request.nil?
758
+
759
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Memcache::V1beta2::ApplySoftwareUpdateRequest
760
+
761
+ # Converts hash and nil to an options object
762
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
763
+
764
+ # Customize the options with defaults
765
+ metadata = @config.rpcs.apply_software_update.metadata.to_h
766
+
767
+ # Set x-goog-api-client and x-goog-user-project headers
768
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
769
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
770
+ gapic_version: ::Google::Cloud::Memcache::V1beta2::VERSION
771
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
772
+
773
+ header_params = {
774
+ "instance" => request.instance
775
+ }
776
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
777
+ metadata[:"x-goog-request-params"] ||= request_params_header
778
+
779
+ options.apply_defaults timeout: @config.rpcs.apply_software_update.timeout,
780
+ metadata: metadata,
781
+ retry_policy: @config.rpcs.apply_software_update.retry_policy
782
+ options.apply_defaults metadata: @config.metadata,
783
+ retry_policy: @config.retry_policy
784
+
785
+ @cloud_memcache_stub.call_rpc :apply_software_update, request, options: options do |response, operation|
786
+ response = ::Gapic::Operation.new response, @operations_client, options: options
787
+ yield response, operation if block_given?
788
+ return response
789
+ end
790
+ rescue ::GRPC::BadStatus => e
791
+ raise ::Google::Cloud::Error.from_error(e)
792
+ end
793
+
709
794
  ##
710
795
  # Configuration class for the CloudMemcache API.
711
796
  #
@@ -791,14 +876,14 @@ module Google
791
876
 
792
877
  config_attr :endpoint, "memcache.googleapis.com", ::String
793
878
  config_attr :credentials, nil do |value|
794
- allowed = [::String, ::Hash, ::Proc, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
879
+ allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
795
880
  allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
796
881
  allowed.any? { |klass| klass === value }
797
882
  end
798
883
  config_attr :scope, nil, ::String, ::Array, nil
799
884
  config_attr :lib_name, nil, ::String, nil
800
885
  config_attr :lib_version, nil, ::String, nil
801
- config_attr(:channel_args, { "grpc.service_config_disable_resolution"=>1 }, ::Hash, nil)
886
+ config_attr(:channel_args, { "grpc.service_config_disable_resolution" => 1 }, ::Hash, nil)
802
887
  config_attr :interceptors, nil, ::Array, nil
803
888
  config_attr :timeout, nil, ::Numeric, nil
804
889
  config_attr :metadata, nil, ::Hash, nil
@@ -819,7 +904,7 @@ module Google
819
904
  def rpcs
820
905
  @rpcs ||= begin
821
906
  parent_rpcs = nil
822
- parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config&.respond_to?(:rpcs)
907
+ parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config.respond_to?(:rpcs)
823
908
  Rpcs.new parent_rpcs
824
909
  end
825
910
  end
@@ -831,7 +916,7 @@ module Google
831
916
  # Each configuration object is of type `Gapic::Config::Method` and includes
832
917
  # the following configuration fields:
833
918
  #
834
- # * `timeout` (*type:* `Numeric`) - The call timeout in milliseconds
919
+ # * `timeout` (*type:* `Numeric`) - The call timeout in seconds
835
920
  # * `metadata` (*type:* `Hash{Symbol=>String}`) - Additional gRPC headers
836
921
  # * `retry_policy (*type:* `Hash`) - The retry policy. The policy fields
837
922
  # include the following keys:
@@ -877,23 +962,30 @@ module Google
877
962
  # @return [::Gapic::Config::Method]
878
963
  #
879
964
  attr_reader :apply_parameters
965
+ ##
966
+ # RPC-specific configuration for `apply_software_update`
967
+ # @return [::Gapic::Config::Method]
968
+ #
969
+ attr_reader :apply_software_update
880
970
 
881
971
  # @private
882
972
  def initialize parent_rpcs = nil
883
- list_instances_config = parent_rpcs&.list_instances if parent_rpcs&.respond_to? :list_instances
973
+ list_instances_config = parent_rpcs.list_instances if parent_rpcs.respond_to? :list_instances
884
974
  @list_instances = ::Gapic::Config::Method.new list_instances_config
885
- get_instance_config = parent_rpcs&.get_instance if parent_rpcs&.respond_to? :get_instance
975
+ get_instance_config = parent_rpcs.get_instance if parent_rpcs.respond_to? :get_instance
886
976
  @get_instance = ::Gapic::Config::Method.new get_instance_config
887
- create_instance_config = parent_rpcs&.create_instance if parent_rpcs&.respond_to? :create_instance
977
+ create_instance_config = parent_rpcs.create_instance if parent_rpcs.respond_to? :create_instance
888
978
  @create_instance = ::Gapic::Config::Method.new create_instance_config
889
- update_instance_config = parent_rpcs&.update_instance if parent_rpcs&.respond_to? :update_instance
979
+ update_instance_config = parent_rpcs.update_instance if parent_rpcs.respond_to? :update_instance
890
980
  @update_instance = ::Gapic::Config::Method.new update_instance_config
891
- update_parameters_config = parent_rpcs&.update_parameters if parent_rpcs&.respond_to? :update_parameters
981
+ update_parameters_config = parent_rpcs.update_parameters if parent_rpcs.respond_to? :update_parameters
892
982
  @update_parameters = ::Gapic::Config::Method.new update_parameters_config
893
- delete_instance_config = parent_rpcs&.delete_instance if parent_rpcs&.respond_to? :delete_instance
983
+ delete_instance_config = parent_rpcs.delete_instance if parent_rpcs.respond_to? :delete_instance
894
984
  @delete_instance = ::Gapic::Config::Method.new delete_instance_config
895
- apply_parameters_config = parent_rpcs&.apply_parameters if parent_rpcs&.respond_to? :apply_parameters
985
+ apply_parameters_config = parent_rpcs.apply_parameters if parent_rpcs.respond_to? :apply_parameters
896
986
  @apply_parameters = ::Gapic::Config::Method.new apply_parameters_config
987
+ apply_software_update_config = parent_rpcs.apply_software_update if parent_rpcs.respond_to? :apply_software_update
988
+ @apply_software_update = ::Gapic::Config::Method.new apply_software_update_config
897
989
 
898
990
  yield self if block_given?
899
991
  end
@@ -103,8 +103,13 @@ module Google
103
103
  # Lists operations that match the specified filter in the request. If the
104
104
  # server doesn't support this method, it returns `UNIMPLEMENTED`.
105
105
  #
106
- # NOTE: the `name` binding below allows API services to override the binding
107
- # to use different resource name schemes, such as `users/*/operations`.
106
+ # NOTE: the `name` binding allows API services to override the binding
107
+ # to use different resource name schemes, such as `users/*/operations`. To
108
+ # override the binding, API services can add a binding such as
109
+ # `"/v1/{name=users/*}/operations"` to their service configuration.
110
+ # For backwards compatibility, the default name includes the operations
111
+ # collection id, however overriding users must ensure the name binding
112
+ # is the parent resource, without the operations collection id.
108
113
  #
109
114
  # @overload list_operations(request, options = nil)
110
115
  # Pass arguments to `list_operations` via a request object, either of type
@@ -122,7 +127,7 @@ module Google
122
127
  # the default parameter values, pass an empty Hash as a request object (see above).
123
128
  #
124
129
  # @param name [::String]
125
- # The name of the operation collection.
130
+ # The name of the operation's parent resource.
126
131
  # @param filter [::String]
127
132
  # The standard list filter.
128
133
  # @param page_size [::Integer]
@@ -390,6 +395,79 @@ module Google
390
395
  raise ::Google::Cloud::Error.from_error(e)
391
396
  end
392
397
 
398
+ ##
399
+ # Waits for the specified long-running operation until it is done or reaches
400
+ # at most a specified timeout, returning the latest state. If the operation
401
+ # is already done, the latest state is immediately returned. If the timeout
402
+ # specified is greater than the default HTTP/RPC timeout, the HTTP/RPC
403
+ # timeout is used. If the server does not support this method, it returns
404
+ # `google.rpc.Code.UNIMPLEMENTED`.
405
+ # Note that this method is on a best-effort basis. It may return the latest
406
+ # state before the specified timeout (including immediately), meaning even an
407
+ # immediate response is no guarantee that the operation is done.
408
+ #
409
+ # @overload wait_operation(request, options = nil)
410
+ # Pass arguments to `wait_operation` via a request object, either of type
411
+ # {::Google::Longrunning::WaitOperationRequest} or an equivalent Hash.
412
+ #
413
+ # @param request [::Google::Longrunning::WaitOperationRequest, ::Hash]
414
+ # A request object representing the call parameters. Required. To specify no
415
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
416
+ # @param options [::Gapic::CallOptions, ::Hash]
417
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
418
+ #
419
+ # @overload wait_operation(name: nil, timeout: nil)
420
+ # Pass arguments to `wait_operation` via keyword arguments. Note that at
421
+ # least one keyword argument is required. To specify no parameters, or to keep all
422
+ # the default parameter values, pass an empty Hash as a request object (see above).
423
+ #
424
+ # @param name [::String]
425
+ # The name of the operation resource to wait on.
426
+ # @param timeout [::Google::Protobuf::Duration, ::Hash]
427
+ # The maximum duration to wait before timing out. If left blank, the wait
428
+ # will be at most the time permitted by the underlying HTTP/RPC protocol.
429
+ # If RPC context deadline is also specified, the shorter one will be used.
430
+ #
431
+ # @yield [response, operation] Access the result along with the RPC operation
432
+ # @yieldparam response [::Gapic::Operation]
433
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
434
+ #
435
+ # @return [::Gapic::Operation]
436
+ #
437
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
438
+ #
439
+ def wait_operation request, options = nil
440
+ raise ::ArgumentError, "request must be provided" if request.nil?
441
+
442
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Longrunning::WaitOperationRequest
443
+
444
+ # Converts hash and nil to an options object
445
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
446
+
447
+ # Customize the options with defaults
448
+ metadata = @config.rpcs.wait_operation.metadata.to_h
449
+
450
+ # Set x-goog-api-client and x-goog-user-project headers
451
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
452
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
453
+ gapic_version: ::Google::Cloud::Memcache::V1beta2::VERSION
454
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
455
+
456
+ options.apply_defaults timeout: @config.rpcs.wait_operation.timeout,
457
+ metadata: metadata,
458
+ retry_policy: @config.rpcs.wait_operation.retry_policy
459
+ options.apply_defaults metadata: @config.metadata,
460
+ retry_policy: @config.retry_policy
461
+
462
+ @operations_stub.call_rpc :wait_operation, request, options: options do |response, operation|
463
+ response = ::Gapic::Operation.new response, @operations_client, options: options
464
+ yield response, operation if block_given?
465
+ return response
466
+ end
467
+ rescue ::GRPC::BadStatus => e
468
+ raise ::Google::Cloud::Error.from_error(e)
469
+ end
470
+
393
471
  ##
394
472
  # Configuration class for the Operations API.
395
473
  #
@@ -475,14 +553,14 @@ module Google
475
553
 
476
554
  config_attr :endpoint, "memcache.googleapis.com", ::String
477
555
  config_attr :credentials, nil do |value|
478
- allowed = [::String, ::Hash, ::Proc, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
556
+ allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
479
557
  allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
480
558
  allowed.any? { |klass| klass === value }
481
559
  end
482
560
  config_attr :scope, nil, ::String, ::Array, nil
483
561
  config_attr :lib_name, nil, ::String, nil
484
562
  config_attr :lib_version, nil, ::String, nil
485
- config_attr(:channel_args, { "grpc.service_config_disable_resolution"=>1 }, ::Hash, nil)
563
+ config_attr(:channel_args, { "grpc.service_config_disable_resolution" => 1 }, ::Hash, nil)
486
564
  config_attr :interceptors, nil, ::Array, nil
487
565
  config_attr :timeout, nil, ::Numeric, nil
488
566
  config_attr :metadata, nil, ::Hash, nil
@@ -503,7 +581,7 @@ module Google
503
581
  def rpcs
504
582
  @rpcs ||= begin
505
583
  parent_rpcs = nil
506
- parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config&.respond_to?(:rpcs)
584
+ parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config.respond_to?(:rpcs)
507
585
  Rpcs.new parent_rpcs
508
586
  end
509
587
  end
@@ -515,7 +593,7 @@ module Google
515
593
  # Each configuration object is of type `Gapic::Config::Method` and includes
516
594
  # the following configuration fields:
517
595
  #
518
- # * `timeout` (*type:* `Numeric`) - The call timeout in milliseconds
596
+ # * `timeout` (*type:* `Numeric`) - The call timeout in seconds
519
597
  # * `metadata` (*type:* `Hash{Symbol=>String}`) - Additional gRPC headers
520
598
  # * `retry_policy (*type:* `Hash`) - The retry policy. The policy fields
521
599
  # include the following keys:
@@ -546,17 +624,24 @@ module Google
546
624
  # @return [::Gapic::Config::Method]
547
625
  #
548
626
  attr_reader :cancel_operation
627
+ ##
628
+ # RPC-specific configuration for `wait_operation`
629
+ # @return [::Gapic::Config::Method]
630
+ #
631
+ attr_reader :wait_operation
549
632
 
550
633
  # @private
551
634
  def initialize parent_rpcs = nil
552
- list_operations_config = parent_rpcs&.list_operations if parent_rpcs&.respond_to? :list_operations
635
+ list_operations_config = parent_rpcs.list_operations if parent_rpcs.respond_to? :list_operations
553
636
  @list_operations = ::Gapic::Config::Method.new list_operations_config
554
- get_operation_config = parent_rpcs&.get_operation if parent_rpcs&.respond_to? :get_operation
637
+ get_operation_config = parent_rpcs.get_operation if parent_rpcs.respond_to? :get_operation
555
638
  @get_operation = ::Gapic::Config::Method.new get_operation_config
556
- delete_operation_config = parent_rpcs&.delete_operation if parent_rpcs&.respond_to? :delete_operation
639
+ delete_operation_config = parent_rpcs.delete_operation if parent_rpcs.respond_to? :delete_operation
557
640
  @delete_operation = ::Gapic::Config::Method.new delete_operation_config
558
- cancel_operation_config = parent_rpcs&.cancel_operation if parent_rpcs&.respond_to? :cancel_operation
641
+ cancel_operation_config = parent_rpcs.cancel_operation if parent_rpcs.respond_to? :cancel_operation
559
642
  @cancel_operation = ::Gapic::Config::Method.new cancel_operation_config
643
+ wait_operation_config = parent_rpcs.wait_operation if parent_rpcs.respond_to? :wait_operation
644
+ @wait_operation = ::Gapic::Config::Method.new wait_operation_config
560
645
 
561
646
  yield self if block_given?
562
647
  end