google-cloud-tasks-v2beta3 0.10.1 → 0.11.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.
@@ -19,6 +19,7 @@
19
19
  require "google/cloud/errors"
20
20
  require "google/cloud/tasks/v2beta3/cloudtasks_pb"
21
21
  require "google/cloud/tasks/v2beta3/cloud_tasks/rest/service_stub"
22
+ require "google/cloud/location/rest"
22
23
 
23
24
  module Google
24
25
  module Cloud
@@ -123,6 +124,8 @@ module Google
123
124
 
124
125
  default_config.rpcs.run_task.timeout = 20.0
125
126
 
127
+ default_config.rpcs.buffer_task.timeout = 20.0
128
+
126
129
  default_config
127
130
  end
128
131
  yield @configure if block_given?
@@ -187,9 +190,23 @@ module Google
187
190
  @quota_project_id = @config.quota_project
188
191
  @quota_project_id ||= credentials.quota_project_id if credentials.respond_to? :quota_project_id
189
192
 
193
+ @location_client = Google::Cloud::Location::Locations::Rest::Client.new do |config|
194
+ config.credentials = credentials
195
+ config.quota_project = @quota_project_id
196
+ config.endpoint = @config.endpoint
197
+ config.bindings_override = @config.bindings_override
198
+ end
199
+
190
200
  @cloud_tasks_stub = ::Google::Cloud::Tasks::V2beta3::CloudTasks::Rest::ServiceStub.new endpoint: @config.endpoint, credentials: credentials
191
201
  end
192
202
 
203
+ ##
204
+ # Get the associated client for mix-in of the Locations.
205
+ #
206
+ # @return [Google::Cloud::Location::Locations::Rest::Client]
207
+ #
208
+ attr_reader :location_client
209
+
193
210
  # Service calls
194
211
 
195
212
  ##
@@ -216,11 +233,10 @@ module Google
216
233
  # Required. The location name.
217
234
  # For example: `projects/PROJECT_ID/locations/LOCATION_ID`
218
235
  # @param filter [::String]
219
- # `filter` can be used to specify a subset of queues. Any {::Google::Cloud::Tasks::V2beta3::Queue Queue}
220
- # field can be used as a filter and several operators as supported.
221
- # For example: `<=, <, >=, >, !=, =, :`. The filter syntax is the same as
222
- # described in
223
- # [Stackdriver's Advanced Logs
236
+ # `filter` can be used to specify a subset of queues. Any
237
+ # {::Google::Cloud::Tasks::V2beta3::Queue Queue} field can be used as a filter and
238
+ # several operators as supported. For example: `<=, <, >=, >, !=, =, :`. The
239
+ # filter syntax is the same as described in [Stackdriver's Advanced Logs
224
240
  # Filters](https://cloud.google.com/logging/docs/view/advanced_filters).
225
241
  #
226
242
  # Sample filter "state: PAUSED".
@@ -233,20 +249,22 @@ module Google
233
249
  # The maximum page size is 9800. If unspecified, the page size will
234
250
  # be the maximum. Fewer queues than requested might be returned,
235
251
  # even if more queues exist; use the
236
- # {::Google::Cloud::Tasks::V2beta3::ListQueuesResponse#next_page_token next_page_token} in the
237
- # response to determine if more queues exist.
252
+ # {::Google::Cloud::Tasks::V2beta3::ListQueuesResponse#next_page_token next_page_token}
253
+ # in the response to determine if more queues exist.
238
254
  # @param page_token [::String]
239
255
  # A token identifying the page of results to return.
240
256
  #
241
257
  # To request the first page results, page_token must be empty. To
242
258
  # request the next page of results, page_token must be the value of
243
- # {::Google::Cloud::Tasks::V2beta3::ListQueuesResponse#next_page_token next_page_token} returned
244
- # from the previous call to {::Google::Cloud::Tasks::V2beta3::CloudTasks::Rest::Client#list_queues ListQueues}
245
- # method. It is an error to switch the value of the
246
- # {::Google::Cloud::Tasks::V2beta3::ListQueuesRequest#filter filter} while iterating through pages.
259
+ # {::Google::Cloud::Tasks::V2beta3::ListQueuesResponse#next_page_token next_page_token}
260
+ # returned from the previous call to
261
+ # {::Google::Cloud::Tasks::V2beta3::CloudTasks::Rest::Client#list_queues ListQueues} method. It
262
+ # is an error to switch the value of the
263
+ # {::Google::Cloud::Tasks::V2beta3::ListQueuesRequest#filter filter} while
264
+ # iterating through pages.
247
265
  # @param read_mask [::Google::Protobuf::FieldMask, ::Hash]
248
- # Optional. Read mask is used for a more granular control over what the API returns.
249
- # If the mask is not present all fields will be returned except
266
+ # Optional. Read mask is used for a more granular control over what the API
267
+ # returns. If the mask is not present all fields will be returned except
250
268
  # [Queue.stats]. [Queue.stats] will be returned only if it was explicitly
251
269
  # specified in the mask.
252
270
  # @yield [result, operation] Access the result along with the TransportOperation object
@@ -256,6 +274,26 @@ module Google
256
274
  # @return [::Gapic::Rest::PagedEnumerable<::Google::Cloud::Tasks::V2beta3::Queue>]
257
275
  #
258
276
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
277
+ #
278
+ # @example Basic example
279
+ # require "google/cloud/tasks/v2beta3"
280
+ #
281
+ # # Create a client object. The client can be reused for multiple calls.
282
+ # client = Google::Cloud::Tasks::V2beta3::CloudTasks::Rest::Client.new
283
+ #
284
+ # # Create a request. To set request fields, pass in keyword arguments.
285
+ # request = Google::Cloud::Tasks::V2beta3::ListQueuesRequest.new
286
+ #
287
+ # # Call the list_queues method.
288
+ # result = client.list_queues request
289
+ #
290
+ # # The returned object is of type Gapic::PagedEnumerable. You can iterate
291
+ # # over elements, and API calls will be issued to fetch pages as needed.
292
+ # result.each do |item|
293
+ # # Each element is of type ::Google::Cloud::Tasks::V2beta3::Queue.
294
+ # p item
295
+ # end
296
+ #
259
297
  def list_queues request, options = nil
260
298
  raise ::ArgumentError, "request must be provided" if request.nil?
261
299
 
@@ -314,8 +352,8 @@ module Google
314
352
  # Required. The resource name of the queue. For example:
315
353
  # `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID`
316
354
  # @param read_mask [::Google::Protobuf::FieldMask, ::Hash]
317
- # Optional. Read mask is used for a more granular control over what the API returns.
318
- # If the mask is not present all fields will be returned except
355
+ # Optional. Read mask is used for a more granular control over what the API
356
+ # returns. If the mask is not present all fields will be returned except
319
357
  # [Queue.stats]. [Queue.stats] will be returned only if it was explicitly
320
358
  # specified in the mask.
321
359
  # @yield [result, operation] Access the result along with the TransportOperation object
@@ -325,6 +363,22 @@ module Google
325
363
  # @return [::Google::Cloud::Tasks::V2beta3::Queue]
326
364
  #
327
365
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
366
+ #
367
+ # @example Basic example
368
+ # require "google/cloud/tasks/v2beta3"
369
+ #
370
+ # # Create a client object. The client can be reused for multiple calls.
371
+ # client = Google::Cloud::Tasks::V2beta3::CloudTasks::Rest::Client.new
372
+ #
373
+ # # Create a request. To set request fields, pass in keyword arguments.
374
+ # request = Google::Cloud::Tasks::V2beta3::GetQueueRequest.new
375
+ #
376
+ # # Call the get_queue method.
377
+ # result = client.get_queue request
378
+ #
379
+ # # The returned object is of type Google::Cloud::Tasks::V2beta3::Queue.
380
+ # p result
381
+ #
328
382
  def get_queue request, options = nil
329
383
  raise ::ArgumentError, "request must be provided" if request.nil?
330
384
 
@@ -364,8 +418,8 @@ module Google
364
418
  # Creates a queue.
365
419
  #
366
420
  # Queues created with this method allow tasks to live for a maximum of 31
367
- # days. After a task is 31 days old, the task will be deleted regardless of whether
368
- # it was dispatched or not.
421
+ # days. After a task is 31 days old, the task will be deleted regardless of
422
+ # whether it was dispatched or not.
369
423
  #
370
424
  # WARNING: Using this method may have unintended side effects if you are
371
425
  # using an App Engine `queue.yaml` or `queue.xml` file to manage your queues.
@@ -395,11 +449,12 @@ module Google
395
449
  #
396
450
  # The list of allowed locations can be obtained by calling Cloud
397
451
  # Tasks' implementation of
398
- # [ListLocations][google.cloud.location.Locations.ListLocations].
452
+ # `::Google::Cloud::Location::Locations::Rest::Client#list_locations`.
399
453
  # @param queue [::Google::Cloud::Tasks::V2beta3::Queue, ::Hash]
400
454
  # Required. The queue to create.
401
455
  #
402
- # [Queue's name][google.cloud.tasks.v2beta3.Queue.name] cannot be the same as an existing queue.
456
+ # [Queue's name][google.cloud.tasks.v2beta3.Queue.name] cannot be the same as
457
+ # an existing queue.
403
458
  # @yield [result, operation] Access the result along with the TransportOperation object
404
459
  # @yieldparam result [::Google::Cloud::Tasks::V2beta3::Queue]
405
460
  # @yieldparam operation [::Gapic::Rest::TransportOperation]
@@ -407,6 +462,22 @@ module Google
407
462
  # @return [::Google::Cloud::Tasks::V2beta3::Queue]
408
463
  #
409
464
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
465
+ #
466
+ # @example Basic example
467
+ # require "google/cloud/tasks/v2beta3"
468
+ #
469
+ # # Create a client object. The client can be reused for multiple calls.
470
+ # client = Google::Cloud::Tasks::V2beta3::CloudTasks::Rest::Client.new
471
+ #
472
+ # # Create a request. To set request fields, pass in keyword arguments.
473
+ # request = Google::Cloud::Tasks::V2beta3::CreateQueueRequest.new
474
+ #
475
+ # # Call the create_queue method.
476
+ # result = client.create_queue request
477
+ #
478
+ # # The returned object is of type Google::Cloud::Tasks::V2beta3::Queue.
479
+ # p result
480
+ #
410
481
  def create_queue request, options = nil
411
482
  raise ::ArgumentError, "request must be provided" if request.nil?
412
483
 
@@ -449,8 +520,8 @@ module Google
449
520
  # the queue if it does exist.
450
521
  #
451
522
  # Queues created with this method allow tasks to live for a maximum of 31
452
- # days. After a task is 31 days old, the task will be deleted regardless of whether
453
- # it was dispatched or not.
523
+ # days. After a task is 31 days old, the task will be deleted regardless of
524
+ # whether it was dispatched or not.
454
525
  #
455
526
  # WARNING: Using this method may have unintended side effects if you are
456
527
  # using an App Engine `queue.yaml` or `queue.xml` file to manage your queues.
@@ -477,11 +548,13 @@ module Google
477
548
  # @param queue [::Google::Cloud::Tasks::V2beta3::Queue, ::Hash]
478
549
  # Required. The queue to create or update.
479
550
  #
480
- # The queue's {::Google::Cloud::Tasks::V2beta3::Queue#name name} must be specified.
551
+ # The queue's {::Google::Cloud::Tasks::V2beta3::Queue#name name} must be
552
+ # specified.
481
553
  #
482
554
  # Output only fields cannot be modified using UpdateQueue.
483
555
  # Any value specified for an output only field will be ignored.
484
- # The queue's {::Google::Cloud::Tasks::V2beta3::Queue#name name} cannot be changed.
556
+ # The queue's {::Google::Cloud::Tasks::V2beta3::Queue#name name} cannot be
557
+ # changed.
485
558
  # @param update_mask [::Google::Protobuf::FieldMask, ::Hash]
486
559
  # A mask used to specify which fields of the queue are being updated.
487
560
  #
@@ -493,6 +566,22 @@ module Google
493
566
  # @return [::Google::Cloud::Tasks::V2beta3::Queue]
494
567
  #
495
568
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
569
+ #
570
+ # @example Basic example
571
+ # require "google/cloud/tasks/v2beta3"
572
+ #
573
+ # # Create a client object. The client can be reused for multiple calls.
574
+ # client = Google::Cloud::Tasks::V2beta3::CloudTasks::Rest::Client.new
575
+ #
576
+ # # Create a request. To set request fields, pass in keyword arguments.
577
+ # request = Google::Cloud::Tasks::V2beta3::UpdateQueueRequest.new
578
+ #
579
+ # # Call the update_queue method.
580
+ # result = client.update_queue request
581
+ #
582
+ # # The returned object is of type Google::Cloud::Tasks::V2beta3::Queue.
583
+ # p result
584
+ #
496
585
  def update_queue request, options = nil
497
586
  raise ::ArgumentError, "request must be provided" if request.nil?
498
587
 
@@ -568,6 +657,22 @@ module Google
568
657
  # @return [::Google::Protobuf::Empty]
569
658
  #
570
659
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
660
+ #
661
+ # @example Basic example
662
+ # require "google/cloud/tasks/v2beta3"
663
+ #
664
+ # # Create a client object. The client can be reused for multiple calls.
665
+ # client = Google::Cloud::Tasks::V2beta3::CloudTasks::Rest::Client.new
666
+ #
667
+ # # Create a request. To set request fields, pass in keyword arguments.
668
+ # request = Google::Cloud::Tasks::V2beta3::DeleteQueueRequest.new
669
+ #
670
+ # # Call the delete_queue method.
671
+ # result = client.delete_queue request
672
+ #
673
+ # # The returned object is of type Google::Protobuf::Empty.
674
+ # p result
675
+ #
571
676
  def delete_queue request, options = nil
572
677
  raise ::ArgumentError, "request must be provided" if request.nil?
573
678
 
@@ -636,6 +741,22 @@ module Google
636
741
  # @return [::Google::Cloud::Tasks::V2beta3::Queue]
637
742
  #
638
743
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
744
+ #
745
+ # @example Basic example
746
+ # require "google/cloud/tasks/v2beta3"
747
+ #
748
+ # # Create a client object. The client can be reused for multiple calls.
749
+ # client = Google::Cloud::Tasks::V2beta3::CloudTasks::Rest::Client.new
750
+ #
751
+ # # Create a request. To set request fields, pass in keyword arguments.
752
+ # request = Google::Cloud::Tasks::V2beta3::PurgeQueueRequest.new
753
+ #
754
+ # # Call the purge_queue method.
755
+ # result = client.purge_queue request
756
+ #
757
+ # # The returned object is of type Google::Cloud::Tasks::V2beta3::Queue.
758
+ # p result
759
+ #
639
760
  def purge_queue request, options = nil
640
761
  raise ::ArgumentError, "request must be provided" if request.nil?
641
762
 
@@ -676,9 +797,10 @@ module Google
676
797
  #
677
798
  # If a queue is paused then the system will stop dispatching tasks
678
799
  # until the queue is resumed via
679
- # {::Google::Cloud::Tasks::V2beta3::CloudTasks::Rest::Client#resume_queue ResumeQueue}. Tasks can still be added
680
- # when the queue is paused. A queue is paused if its
681
- # {::Google::Cloud::Tasks::V2beta3::Queue#state state} is {::Google::Cloud::Tasks::V2beta3::Queue::State::PAUSED PAUSED}.
800
+ # {::Google::Cloud::Tasks::V2beta3::CloudTasks::Rest::Client#resume_queue ResumeQueue}. Tasks can
801
+ # still be added when the queue is paused. A queue is paused if its
802
+ # {::Google::Cloud::Tasks::V2beta3::Queue#state state} is
803
+ # {::Google::Cloud::Tasks::V2beta3::Queue::State::PAUSED PAUSED}.
682
804
  #
683
805
  # @overload pause_queue(request, options = nil)
684
806
  # Pass arguments to `pause_queue` via a request object, either of type
@@ -705,6 +827,22 @@ module Google
705
827
  # @return [::Google::Cloud::Tasks::V2beta3::Queue]
706
828
  #
707
829
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
830
+ #
831
+ # @example Basic example
832
+ # require "google/cloud/tasks/v2beta3"
833
+ #
834
+ # # Create a client object. The client can be reused for multiple calls.
835
+ # client = Google::Cloud::Tasks::V2beta3::CloudTasks::Rest::Client.new
836
+ #
837
+ # # Create a request. To set request fields, pass in keyword arguments.
838
+ # request = Google::Cloud::Tasks::V2beta3::PauseQueueRequest.new
839
+ #
840
+ # # Call the pause_queue method.
841
+ # result = client.pause_queue request
842
+ #
843
+ # # The returned object is of type Google::Cloud::Tasks::V2beta3::Queue.
844
+ # p result
845
+ #
708
846
  def pause_queue request, options = nil
709
847
  raise ::ArgumentError, "request must be provided" if request.nil?
710
848
 
@@ -745,9 +883,11 @@ module Google
745
883
  #
746
884
  # This method resumes a queue after it has been
747
885
  # {::Google::Cloud::Tasks::V2beta3::Queue::State::PAUSED PAUSED} or
748
- # {::Google::Cloud::Tasks::V2beta3::Queue::State::DISABLED DISABLED}. The state of a queue is stored
749
- # in the queue's {::Google::Cloud::Tasks::V2beta3::Queue#state state}; after calling this method it
750
- # will be set to {::Google::Cloud::Tasks::V2beta3::Queue::State::RUNNING RUNNING}.
886
+ # {::Google::Cloud::Tasks::V2beta3::Queue::State::DISABLED DISABLED}. The state of a
887
+ # queue is stored in the queue's
888
+ # {::Google::Cloud::Tasks::V2beta3::Queue#state state}; after calling this method
889
+ # it will be set to
890
+ # {::Google::Cloud::Tasks::V2beta3::Queue::State::RUNNING RUNNING}.
751
891
  #
752
892
  # WARNING: Resuming many high-QPS queues at the same time can
753
893
  # lead to target overloading. If you are resuming high-QPS
@@ -780,6 +920,22 @@ module Google
780
920
  # @return [::Google::Cloud::Tasks::V2beta3::Queue]
781
921
  #
782
922
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
923
+ #
924
+ # @example Basic example
925
+ # require "google/cloud/tasks/v2beta3"
926
+ #
927
+ # # Create a client object. The client can be reused for multiple calls.
928
+ # client = Google::Cloud::Tasks::V2beta3::CloudTasks::Rest::Client.new
929
+ #
930
+ # # Create a request. To set request fields, pass in keyword arguments.
931
+ # request = Google::Cloud::Tasks::V2beta3::ResumeQueueRequest.new
932
+ #
933
+ # # Call the resume_queue method.
934
+ # result = client.resume_queue request
935
+ #
936
+ # # The returned object is of type Google::Cloud::Tasks::V2beta3::Queue.
937
+ # p result
938
+ #
783
939
  def resume_queue request, options = nil
784
940
  raise ::ArgumentError, "request must be provided" if request.nil?
785
941
 
@@ -816,9 +972,9 @@ module Google
816
972
  end
817
973
 
818
974
  ##
819
- # Gets the access control policy for a {::Google::Cloud::Tasks::V2beta3::Queue Queue}.
820
- # Returns an empty policy if the resource exists and does not have a policy
821
- # set.
975
+ # Gets the access control policy for a
976
+ # {::Google::Cloud::Tasks::V2beta3::Queue Queue}. Returns an empty policy if the
977
+ # resource exists and does not have a policy set.
822
978
  #
823
979
  # Authorization requires the following
824
980
  # [Google IAM](https://cloud.google.com/iam) permission on the specified
@@ -854,6 +1010,22 @@ module Google
854
1010
  # @return [::Google::Iam::V1::Policy]
855
1011
  #
856
1012
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
1013
+ #
1014
+ # @example Basic example
1015
+ # require "google/cloud/tasks/v2beta3"
1016
+ #
1017
+ # # Create a client object. The client can be reused for multiple calls.
1018
+ # client = Google::Cloud::Tasks::V2beta3::CloudTasks::Rest::Client.new
1019
+ #
1020
+ # # Create a request. To set request fields, pass in keyword arguments.
1021
+ # request = Google::Iam::V1::GetIamPolicyRequest.new
1022
+ #
1023
+ # # Call the get_iam_policy method.
1024
+ # result = client.get_iam_policy request
1025
+ #
1026
+ # # The returned object is of type Google::Iam::V1::Policy.
1027
+ # p result
1028
+ #
857
1029
  def get_iam_policy request, options = nil
858
1030
  raise ::ArgumentError, "request must be provided" if request.nil?
859
1031
 
@@ -890,8 +1062,8 @@ module Google
890
1062
  end
891
1063
 
892
1064
  ##
893
- # Sets the access control policy for a {::Google::Cloud::Tasks::V2beta3::Queue Queue}. Replaces any existing
894
- # policy.
1065
+ # Sets the access control policy for a
1066
+ # {::Google::Cloud::Tasks::V2beta3::Queue Queue}. Replaces any existing policy.
895
1067
  #
896
1068
  # Note: The Cloud Console does not check queue-level IAM permissions yet.
897
1069
  # Project-level permissions are required to use the Cloud Console.
@@ -938,6 +1110,22 @@ module Google
938
1110
  # @return [::Google::Iam::V1::Policy]
939
1111
  #
940
1112
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
1113
+ #
1114
+ # @example Basic example
1115
+ # require "google/cloud/tasks/v2beta3"
1116
+ #
1117
+ # # Create a client object. The client can be reused for multiple calls.
1118
+ # client = Google::Cloud::Tasks::V2beta3::CloudTasks::Rest::Client.new
1119
+ #
1120
+ # # Create a request. To set request fields, pass in keyword arguments.
1121
+ # request = Google::Iam::V1::SetIamPolicyRequest.new
1122
+ #
1123
+ # # Call the set_iam_policy method.
1124
+ # result = client.set_iam_policy request
1125
+ #
1126
+ # # The returned object is of type Google::Iam::V1::Policy.
1127
+ # p result
1128
+ #
941
1129
  def set_iam_policy request, options = nil
942
1130
  raise ::ArgumentError, "request must be provided" if request.nil?
943
1131
 
@@ -974,9 +1162,10 @@ module Google
974
1162
  end
975
1163
 
976
1164
  ##
977
- # Returns permissions that a caller has on a {::Google::Cloud::Tasks::V2beta3::Queue Queue}.
978
- # If the resource does not exist, this will return an empty set of
979
- # permissions, not a [NOT_FOUND][google.rpc.Code.NOT_FOUND] error.
1165
+ # Returns permissions that a caller has on a
1166
+ # {::Google::Cloud::Tasks::V2beta3::Queue Queue}. If the resource does not exist,
1167
+ # this will return an empty set of permissions, not a
1168
+ # [NOT_FOUND][google.rpc.Code.NOT_FOUND] error.
980
1169
  #
981
1170
  # Note: This operation is designed to be used for building permission-aware
982
1171
  # UIs and command-line tools, not for authorization checking. This operation
@@ -1012,6 +1201,22 @@ module Google
1012
1201
  # @return [::Google::Iam::V1::TestIamPermissionsResponse]
1013
1202
  #
1014
1203
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
1204
+ #
1205
+ # @example Basic example
1206
+ # require "google/cloud/tasks/v2beta3"
1207
+ #
1208
+ # # Create a client object. The client can be reused for multiple calls.
1209
+ # client = Google::Cloud::Tasks::V2beta3::CloudTasks::Rest::Client.new
1210
+ #
1211
+ # # Create a request. To set request fields, pass in keyword arguments.
1212
+ # request = Google::Iam::V1::TestIamPermissionsRequest.new
1213
+ #
1214
+ # # Call the test_iam_permissions method.
1215
+ # result = client.test_iam_permissions request
1216
+ #
1217
+ # # The returned object is of type Google::Iam::V1::TestIamPermissionsResponse.
1218
+ # p result
1219
+ #
1015
1220
  def test_iam_permissions request, options = nil
1016
1221
  raise ::ArgumentError, "request must be provided" if request.nil?
1017
1222
 
@@ -1050,10 +1255,10 @@ module Google
1050
1255
  ##
1051
1256
  # Lists the tasks in a queue.
1052
1257
  #
1053
- # By default, only the {::Google::Cloud::Tasks::V2beta3::Task::View::BASIC BASIC} view is retrieved
1054
- # due to performance considerations;
1055
- # {::Google::Cloud::Tasks::V2beta3::ListTasksRequest#response_view response_view} controls the
1056
- # subset of information which is returned.
1258
+ # By default, only the {::Google::Cloud::Tasks::V2beta3::Task::View::BASIC BASIC}
1259
+ # view is retrieved due to performance considerations;
1260
+ # {::Google::Cloud::Tasks::V2beta3::ListTasksRequest#response_view response_view}
1261
+ # controls the subset of information which is returned.
1057
1262
  #
1058
1263
  # The tasks may be returned in any order. The ordering may change at any
1059
1264
  # time.
@@ -1077,24 +1282,25 @@ module Google
1077
1282
  # Required. The queue name. For example:
1078
1283
  # `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID`
1079
1284
  # @param response_view [::Google::Cloud::Tasks::V2beta3::Task::View]
1080
- # The response_view specifies which subset of the {::Google::Cloud::Tasks::V2beta3::Task Task} will be
1081
- # returned.
1082
- #
1083
- # By default response_view is {::Google::Cloud::Tasks::V2beta3::Task::View::BASIC BASIC}; not all
1084
- # information is retrieved by default because some data, such as
1085
- # payloads, might be desirable to return only when needed because
1086
- # of its large size or because of the sensitivity of data that it
1087
- # contains.
1088
- #
1089
- # Authorization for {::Google::Cloud::Tasks::V2beta3::Task::View::FULL FULL} requires
1090
- # `cloudtasks.tasks.fullView` [Google IAM](https://cloud.google.com/iam/)
1091
- # permission on the {::Google::Cloud::Tasks::V2beta3::Task Task} resource.
1285
+ # The response_view specifies which subset of the
1286
+ # {::Google::Cloud::Tasks::V2beta3::Task Task} will be returned.
1287
+ #
1288
+ # By default response_view is
1289
+ # {::Google::Cloud::Tasks::V2beta3::Task::View::BASIC BASIC}; not all information is
1290
+ # retrieved by default because some data, such as payloads, might be
1291
+ # desirable to return only when needed because of its large size or because
1292
+ # of the sensitivity of data that it contains.
1293
+ #
1294
+ # Authorization for {::Google::Cloud::Tasks::V2beta3::Task::View::FULL FULL}
1295
+ # requires `cloudtasks.tasks.fullView` [Google
1296
+ # IAM](https://cloud.google.com/iam/) permission on the
1297
+ # {::Google::Cloud::Tasks::V2beta3::Task Task} resource.
1092
1298
  # @param page_size [::Integer]
1093
1299
  # Maximum page size.
1094
1300
  #
1095
1301
  # Fewer tasks than requested might be returned, even if more tasks exist; use
1096
- # {::Google::Cloud::Tasks::V2beta3::ListTasksResponse#next_page_token next_page_token} in the response to
1097
- # determine if more tasks exist.
1302
+ # {::Google::Cloud::Tasks::V2beta3::ListTasksResponse#next_page_token next_page_token}
1303
+ # in the response to determine if more tasks exist.
1098
1304
  #
1099
1305
  # The maximum page size is 1000. If unspecified, the page size will be the
1100
1306
  # maximum.
@@ -1103,9 +1309,9 @@ module Google
1103
1309
  #
1104
1310
  # To request the first page results, page_token must be empty. To
1105
1311
  # request the next page of results, page_token must be the value of
1106
- # {::Google::Cloud::Tasks::V2beta3::ListTasksResponse#next_page_token next_page_token} returned
1107
- # from the previous call to {::Google::Cloud::Tasks::V2beta3::CloudTasks::Rest::Client#list_tasks ListTasks}
1108
- # method.
1312
+ # {::Google::Cloud::Tasks::V2beta3::ListTasksResponse#next_page_token next_page_token}
1313
+ # returned from the previous call to
1314
+ # {::Google::Cloud::Tasks::V2beta3::CloudTasks::Rest::Client#list_tasks ListTasks} method.
1109
1315
  #
1110
1316
  # The page token is valid for only 2 hours.
1111
1317
  # @yield [result, operation] Access the result along with the TransportOperation object
@@ -1115,6 +1321,26 @@ module Google
1115
1321
  # @return [::Gapic::Rest::PagedEnumerable<::Google::Cloud::Tasks::V2beta3::Task>]
1116
1322
  #
1117
1323
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
1324
+ #
1325
+ # @example Basic example
1326
+ # require "google/cloud/tasks/v2beta3"
1327
+ #
1328
+ # # Create a client object. The client can be reused for multiple calls.
1329
+ # client = Google::Cloud::Tasks::V2beta3::CloudTasks::Rest::Client.new
1330
+ #
1331
+ # # Create a request. To set request fields, pass in keyword arguments.
1332
+ # request = Google::Cloud::Tasks::V2beta3::ListTasksRequest.new
1333
+ #
1334
+ # # Call the list_tasks method.
1335
+ # result = client.list_tasks request
1336
+ #
1337
+ # # The returned object is of type Gapic::PagedEnumerable. You can iterate
1338
+ # # over elements, and API calls will be issued to fetch pages as needed.
1339
+ # result.each do |item|
1340
+ # # Each element is of type ::Google::Cloud::Tasks::V2beta3::Task.
1341
+ # p item
1342
+ # end
1343
+ #
1118
1344
  def list_tasks request, options = nil
1119
1345
  raise ::ArgumentError, "request must be provided" if request.nil?
1120
1346
 
@@ -1173,18 +1399,19 @@ module Google
1173
1399
  # Required. The task name. For example:
1174
1400
  # `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_ID`
1175
1401
  # @param response_view [::Google::Cloud::Tasks::V2beta3::Task::View]
1176
- # The response_view specifies which subset of the {::Google::Cloud::Tasks::V2beta3::Task Task} will be
1177
- # returned.
1178
- #
1179
- # By default response_view is {::Google::Cloud::Tasks::V2beta3::Task::View::BASIC BASIC}; not all
1180
- # information is retrieved by default because some data, such as
1181
- # payloads, might be desirable to return only when needed because
1182
- # of its large size or because of the sensitivity of data that it
1183
- # contains.
1184
- #
1185
- # Authorization for {::Google::Cloud::Tasks::V2beta3::Task::View::FULL FULL} requires
1186
- # `cloudtasks.tasks.fullView` [Google IAM](https://cloud.google.com/iam/)
1187
- # permission on the {::Google::Cloud::Tasks::V2beta3::Task Task} resource.
1402
+ # The response_view specifies which subset of the
1403
+ # {::Google::Cloud::Tasks::V2beta3::Task Task} will be returned.
1404
+ #
1405
+ # By default response_view is
1406
+ # {::Google::Cloud::Tasks::V2beta3::Task::View::BASIC BASIC}; not all information is
1407
+ # retrieved by default because some data, such as payloads, might be
1408
+ # desirable to return only when needed because of its large size or because
1409
+ # of the sensitivity of data that it contains.
1410
+ #
1411
+ # Authorization for {::Google::Cloud::Tasks::V2beta3::Task::View::FULL FULL}
1412
+ # requires `cloudtasks.tasks.fullView` [Google
1413
+ # IAM](https://cloud.google.com/iam/) permission on the
1414
+ # {::Google::Cloud::Tasks::V2beta3::Task Task} resource.
1188
1415
  # @yield [result, operation] Access the result along with the TransportOperation object
1189
1416
  # @yieldparam result [::Google::Cloud::Tasks::V2beta3::Task]
1190
1417
  # @yieldparam operation [::Gapic::Rest::TransportOperation]
@@ -1192,6 +1419,22 @@ module Google
1192
1419
  # @return [::Google::Cloud::Tasks::V2beta3::Task]
1193
1420
  #
1194
1421
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
1422
+ #
1423
+ # @example Basic example
1424
+ # require "google/cloud/tasks/v2beta3"
1425
+ #
1426
+ # # Create a client object. The client can be reused for multiple calls.
1427
+ # client = Google::Cloud::Tasks::V2beta3::CloudTasks::Rest::Client.new
1428
+ #
1429
+ # # Create a request. To set request fields, pass in keyword arguments.
1430
+ # request = Google::Cloud::Tasks::V2beta3::GetTaskRequest.new
1431
+ #
1432
+ # # Call the get_task method.
1433
+ # result = client.get_task request
1434
+ #
1435
+ # # The returned object is of type Google::Cloud::Tasks::V2beta3::Task.
1436
+ # p result
1437
+ #
1195
1438
  def get_task request, options = nil
1196
1439
  raise ::ArgumentError, "request must be provided" if request.nil?
1197
1440
 
@@ -1259,13 +1502,13 @@ module Google
1259
1502
  #
1260
1503
  # Task names have the following format:
1261
1504
  # `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_ID`.
1262
- # The user can optionally specify a task {::Google::Cloud::Tasks::V2beta3::Task#name name}. If a
1263
- # name is not specified then the system will generate a random
1264
- # unique task id, which will be set in the task returned in the
1265
- # {::Google::Cloud::Tasks::V2beta3::Task#name response}.
1505
+ # The user can optionally specify a task
1506
+ # {::Google::Cloud::Tasks::V2beta3::Task#name name}. If a name is not specified
1507
+ # then the system will generate a random unique task id, which will be set in
1508
+ # the task returned in the {::Google::Cloud::Tasks::V2beta3::Task#name response}.
1266
1509
  #
1267
- # If {::Google::Cloud::Tasks::V2beta3::Task#schedule_time schedule_time} is not set or is in the
1268
- # past then Cloud Tasks will set it to the current time.
1510
+ # If {::Google::Cloud::Tasks::V2beta3::Task#schedule_time schedule_time} is not
1511
+ # set or is in the past then Cloud Tasks will set it to the current time.
1269
1512
  #
1270
1513
  # Task De-duplication:
1271
1514
  #
@@ -1274,33 +1517,34 @@ module Google
1274
1517
  # that was deleted or executed recently then the call will fail
1275
1518
  # with [ALREADY_EXISTS][google.rpc.Code.ALREADY_EXISTS].
1276
1519
  # If the task's queue was created using Cloud Tasks, then another task with
1277
- # the same name can't be created for ~1hour after the original task was
1520
+ # the same name can't be created for ~1 hour after the original task was
1278
1521
  # deleted or executed. If the task's queue was created using queue.yaml or
1279
1522
  # queue.xml, then another task with the same name can't be created
1280
- # for ~9days after the original task was deleted or executed.
1523
+ # for ~9 days after the original task was deleted or executed.
1281
1524
  #
1282
1525
  # Because there is an extra lookup cost to identify duplicate task
1283
- # names, these {::Google::Cloud::Tasks::V2beta3::CloudTasks::Rest::Client#create_task CreateTask} calls have significantly
1284
- # increased latency. Using hashed strings for the task id or for
1285
- # the prefix of the task id is recommended. Choosing task ids that
1286
- # are sequential or have sequential prefixes, for example using a
1526
+ # names, these {::Google::Cloud::Tasks::V2beta3::CloudTasks::Rest::Client#create_task CreateTask}
1527
+ # calls have significantly increased latency. Using hashed strings for the
1528
+ # task id or for the prefix of the task id is recommended. Choosing task ids
1529
+ # that are sequential or have sequential prefixes, for example using a
1287
1530
  # timestamp, causes an increase in latency and error rates in all
1288
1531
  # task commands. The infrastructure relies on an approximately
1289
1532
  # uniform distribution of task ids to store and serve tasks
1290
1533
  # efficiently.
1291
1534
  # @param response_view [::Google::Cloud::Tasks::V2beta3::Task::View]
1292
- # The response_view specifies which subset of the {::Google::Cloud::Tasks::V2beta3::Task Task} will be
1293
- # returned.
1294
- #
1295
- # By default response_view is {::Google::Cloud::Tasks::V2beta3::Task::View::BASIC BASIC}; not all
1296
- # information is retrieved by default because some data, such as
1297
- # payloads, might be desirable to return only when needed because
1298
- # of its large size or because of the sensitivity of data that it
1299
- # contains.
1300
- #
1301
- # Authorization for {::Google::Cloud::Tasks::V2beta3::Task::View::FULL FULL} requires
1302
- # `cloudtasks.tasks.fullView` [Google IAM](https://cloud.google.com/iam/)
1303
- # permission on the {::Google::Cloud::Tasks::V2beta3::Task Task} resource.
1535
+ # The response_view specifies which subset of the
1536
+ # {::Google::Cloud::Tasks::V2beta3::Task Task} will be returned.
1537
+ #
1538
+ # By default response_view is
1539
+ # {::Google::Cloud::Tasks::V2beta3::Task::View::BASIC BASIC}; not all information is
1540
+ # retrieved by default because some data, such as payloads, might be
1541
+ # desirable to return only when needed because of its large size or because
1542
+ # of the sensitivity of data that it contains.
1543
+ #
1544
+ # Authorization for {::Google::Cloud::Tasks::V2beta3::Task::View::FULL FULL}
1545
+ # requires `cloudtasks.tasks.fullView` [Google
1546
+ # IAM](https://cloud.google.com/iam/) permission on the
1547
+ # {::Google::Cloud::Tasks::V2beta3::Task Task} resource.
1304
1548
  # @yield [result, operation] Access the result along with the TransportOperation object
1305
1549
  # @yieldparam result [::Google::Cloud::Tasks::V2beta3::Task]
1306
1550
  # @yieldparam operation [::Gapic::Rest::TransportOperation]
@@ -1308,6 +1552,22 @@ module Google
1308
1552
  # @return [::Google::Cloud::Tasks::V2beta3::Task]
1309
1553
  #
1310
1554
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
1555
+ #
1556
+ # @example Basic example
1557
+ # require "google/cloud/tasks/v2beta3"
1558
+ #
1559
+ # # Create a client object. The client can be reused for multiple calls.
1560
+ # client = Google::Cloud::Tasks::V2beta3::CloudTasks::Rest::Client.new
1561
+ #
1562
+ # # Create a request. To set request fields, pass in keyword arguments.
1563
+ # request = Google::Cloud::Tasks::V2beta3::CreateTaskRequest.new
1564
+ #
1565
+ # # Call the create_task method.
1566
+ # result = client.create_task request
1567
+ #
1568
+ # # The returned object is of type Google::Cloud::Tasks::V2beta3::Task.
1569
+ # p result
1570
+ #
1311
1571
  def create_task request, options = nil
1312
1572
  raise ::ArgumentError, "request must be provided" if request.nil?
1313
1573
 
@@ -1375,6 +1635,22 @@ module Google
1375
1635
  # @return [::Google::Protobuf::Empty]
1376
1636
  #
1377
1637
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
1638
+ #
1639
+ # @example Basic example
1640
+ # require "google/cloud/tasks/v2beta3"
1641
+ #
1642
+ # # Create a client object. The client can be reused for multiple calls.
1643
+ # client = Google::Cloud::Tasks::V2beta3::CloudTasks::Rest::Client.new
1644
+ #
1645
+ # # Create a request. To set request fields, pass in keyword arguments.
1646
+ # request = Google::Cloud::Tasks::V2beta3::DeleteTaskRequest.new
1647
+ #
1648
+ # # Call the delete_task method.
1649
+ # result = client.delete_task request
1650
+ #
1651
+ # # The returned object is of type Google::Protobuf::Empty.
1652
+ # p result
1653
+ #
1378
1654
  def delete_task request, options = nil
1379
1655
  raise ::ArgumentError, "request must be provided" if request.nil?
1380
1656
 
@@ -1414,13 +1690,14 @@ module Google
1414
1690
  # Forces a task to run now.
1415
1691
  #
1416
1692
  # When this method is called, Cloud Tasks will dispatch the task, even if
1417
- # the task is already running, the queue has reached its {::Google::Cloud::Tasks::V2beta3::RateLimits RateLimits} or
1418
- # is {::Google::Cloud::Tasks::V2beta3::Queue::State::PAUSED PAUSED}.
1693
+ # the task is already running, the queue has reached its
1694
+ # {::Google::Cloud::Tasks::V2beta3::RateLimits RateLimits} or is
1695
+ # {::Google::Cloud::Tasks::V2beta3::Queue::State::PAUSED PAUSED}.
1419
1696
  #
1420
1697
  # This command is meant to be used for manual debugging. For
1421
- # example, {::Google::Cloud::Tasks::V2beta3::CloudTasks::Rest::Client#run_task RunTask} can be used to retry a failed
1422
- # task after a fix has been made or to manually force a task to be
1423
- # dispatched now.
1698
+ # example, {::Google::Cloud::Tasks::V2beta3::CloudTasks::Rest::Client#run_task RunTask} can be
1699
+ # used to retry a failed task after a fix has been made or to manually force
1700
+ # a task to be dispatched now.
1424
1701
  #
1425
1702
  # The dispatched task is returned. That is, the task that is returned
1426
1703
  # contains the [status][Task.status] after the task is dispatched but
@@ -1428,9 +1705,11 @@ module Google
1428
1705
  #
1429
1706
  # If Cloud Tasks receives a successful response from the task's
1430
1707
  # target, then the task will be deleted; otherwise the task's
1431
- # {::Google::Cloud::Tasks::V2beta3::Task#schedule_time schedule_time} will be reset to the time that
1432
- # {::Google::Cloud::Tasks::V2beta3::CloudTasks::Rest::Client#run_task RunTask} was called plus the retry delay specified
1433
- # in the queue's {::Google::Cloud::Tasks::V2beta3::RetryConfig RetryConfig}.
1708
+ # {::Google::Cloud::Tasks::V2beta3::Task#schedule_time schedule_time} will be
1709
+ # reset to the time that
1710
+ # {::Google::Cloud::Tasks::V2beta3::CloudTasks::Rest::Client#run_task RunTask} was called plus
1711
+ # the retry delay specified in the queue's
1712
+ # {::Google::Cloud::Tasks::V2beta3::RetryConfig RetryConfig}.
1434
1713
  #
1435
1714
  # {::Google::Cloud::Tasks::V2beta3::CloudTasks::Rest::Client#run_task RunTask} returns
1436
1715
  # [NOT_FOUND][google.rpc.Code.NOT_FOUND] when it is called on a
@@ -1455,18 +1734,19 @@ module Google
1455
1734
  # Required. The task name. For example:
1456
1735
  # `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_ID`
1457
1736
  # @param response_view [::Google::Cloud::Tasks::V2beta3::Task::View]
1458
- # The response_view specifies which subset of the {::Google::Cloud::Tasks::V2beta3::Task Task} will be
1459
- # returned.
1460
- #
1461
- # By default response_view is {::Google::Cloud::Tasks::V2beta3::Task::View::BASIC BASIC}; not all
1462
- # information is retrieved by default because some data, such as
1463
- # payloads, might be desirable to return only when needed because
1464
- # of its large size or because of the sensitivity of data that it
1465
- # contains.
1466
- #
1467
- # Authorization for {::Google::Cloud::Tasks::V2beta3::Task::View::FULL FULL} requires
1468
- # `cloudtasks.tasks.fullView` [Google IAM](https://cloud.google.com/iam/)
1469
- # permission on the {::Google::Cloud::Tasks::V2beta3::Task Task} resource.
1737
+ # The response_view specifies which subset of the
1738
+ # {::Google::Cloud::Tasks::V2beta3::Task Task} will be returned.
1739
+ #
1740
+ # By default response_view is
1741
+ # {::Google::Cloud::Tasks::V2beta3::Task::View::BASIC BASIC}; not all information is
1742
+ # retrieved by default because some data, such as payloads, might be
1743
+ # desirable to return only when needed because of its large size or because
1744
+ # of the sensitivity of data that it contains.
1745
+ #
1746
+ # Authorization for {::Google::Cloud::Tasks::V2beta3::Task::View::FULL FULL}
1747
+ # requires `cloudtasks.tasks.fullView` [Google
1748
+ # IAM](https://cloud.google.com/iam/) permission on the
1749
+ # {::Google::Cloud::Tasks::V2beta3::Task Task} resource.
1470
1750
  # @yield [result, operation] Access the result along with the TransportOperation object
1471
1751
  # @yieldparam result [::Google::Cloud::Tasks::V2beta3::Task]
1472
1752
  # @yieldparam operation [::Gapic::Rest::TransportOperation]
@@ -1474,6 +1754,22 @@ module Google
1474
1754
  # @return [::Google::Cloud::Tasks::V2beta3::Task]
1475
1755
  #
1476
1756
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
1757
+ #
1758
+ # @example Basic example
1759
+ # require "google/cloud/tasks/v2beta3"
1760
+ #
1761
+ # # Create a client object. The client can be reused for multiple calls.
1762
+ # client = Google::Cloud::Tasks::V2beta3::CloudTasks::Rest::Client.new
1763
+ #
1764
+ # # Create a request. To set request fields, pass in keyword arguments.
1765
+ # request = Google::Cloud::Tasks::V2beta3::RunTaskRequest.new
1766
+ #
1767
+ # # Call the run_task method.
1768
+ # result = client.run_task request
1769
+ #
1770
+ # # The returned object is of type Google::Cloud::Tasks::V2beta3::Task.
1771
+ # p result
1772
+ #
1477
1773
  def run_task request, options = nil
1478
1774
  raise ::ArgumentError, "request must be provided" if request.nil?
1479
1775
 
@@ -1509,6 +1805,105 @@ module Google
1509
1805
  raise ::Google::Cloud::Error.from_error(e)
1510
1806
  end
1511
1807
 
1808
+ ##
1809
+ # Creates and buffers a new task without the need to explicitly define a Task
1810
+ # message. The queue must have [HTTP
1811
+ # target][google.cloud.tasks.v2beta3.HttpTarget]. To create the task with a
1812
+ # custom ID, use the following format and set TASK_ID to your desired ID:
1813
+ # projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_ID:buffer
1814
+ # To create the task with an automatically generated ID, use the following
1815
+ # format:
1816
+ # projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks:buffer.
1817
+ # Note: This feature is in its experimental stage. You must request access to
1818
+ # the API through the [Cloud Tasks BufferTask Experiment Signup
1819
+ # form](https://forms.gle/X8Zr5hiXH5tTGFqh8).
1820
+ #
1821
+ # @overload buffer_task(request, options = nil)
1822
+ # Pass arguments to `buffer_task` via a request object, either of type
1823
+ # {::Google::Cloud::Tasks::V2beta3::BufferTaskRequest} or an equivalent Hash.
1824
+ #
1825
+ # @param request [::Google::Cloud::Tasks::V2beta3::BufferTaskRequest, ::Hash]
1826
+ # A request object representing the call parameters. Required. To specify no
1827
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1828
+ # @param options [::Gapic::CallOptions, ::Hash]
1829
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
1830
+ #
1831
+ # @overload buffer_task(queue: nil, task_id: nil, body: nil)
1832
+ # Pass arguments to `buffer_task` via keyword arguments. Note that at
1833
+ # least one keyword argument is required. To specify no parameters, or to keep all
1834
+ # the default parameter values, pass an empty Hash as a request object (see above).
1835
+ #
1836
+ # @param queue [::String]
1837
+ # Required. The parent queue name. For example:
1838
+ # projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID`
1839
+ #
1840
+ # The queue must already exist.
1841
+ # @param task_id [::String]
1842
+ # Optional. Task ID for the task being created. If not provided, a random
1843
+ # task ID is assigned to the task.
1844
+ # @param body [::Google::Api::HttpBody, ::Hash]
1845
+ # Optional. Body of the HTTP request.
1846
+ #
1847
+ # The body can take any generic value. The value is written to the
1848
+ # [HttpRequest][payload] of the [Task].
1849
+ # @yield [result, operation] Access the result along with the TransportOperation object
1850
+ # @yieldparam result [::Google::Cloud::Tasks::V2beta3::BufferTaskResponse]
1851
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
1852
+ #
1853
+ # @return [::Google::Cloud::Tasks::V2beta3::BufferTaskResponse]
1854
+ #
1855
+ # @raise [::Google::Cloud::Error] if the REST call is aborted.
1856
+ #
1857
+ # @example Basic example
1858
+ # require "google/cloud/tasks/v2beta3"
1859
+ #
1860
+ # # Create a client object. The client can be reused for multiple calls.
1861
+ # client = Google::Cloud::Tasks::V2beta3::CloudTasks::Rest::Client.new
1862
+ #
1863
+ # # Create a request. To set request fields, pass in keyword arguments.
1864
+ # request = Google::Cloud::Tasks::V2beta3::BufferTaskRequest.new
1865
+ #
1866
+ # # Call the buffer_task method.
1867
+ # result = client.buffer_task request
1868
+ #
1869
+ # # The returned object is of type Google::Cloud::Tasks::V2beta3::BufferTaskResponse.
1870
+ # p result
1871
+ #
1872
+ def buffer_task request, options = nil
1873
+ raise ::ArgumentError, "request must be provided" if request.nil?
1874
+
1875
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Tasks::V2beta3::BufferTaskRequest
1876
+
1877
+ # Converts hash and nil to an options object
1878
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1879
+
1880
+ # Customize the options with defaults
1881
+ call_metadata = @config.rpcs.buffer_task.metadata.to_h
1882
+
1883
+ # Set x-goog-api-client and x-goog-user-project headers
1884
+ call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1885
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1886
+ gapic_version: ::Google::Cloud::Tasks::V2beta3::VERSION,
1887
+ transports_version_send: [:rest]
1888
+
1889
+ call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1890
+
1891
+ options.apply_defaults timeout: @config.rpcs.buffer_task.timeout,
1892
+ metadata: call_metadata,
1893
+ retry_policy: @config.rpcs.buffer_task.retry_policy
1894
+
1895
+ options.apply_defaults timeout: @config.timeout,
1896
+ metadata: @config.metadata,
1897
+ retry_policy: @config.retry_policy
1898
+
1899
+ @cloud_tasks_stub.buffer_task request, options do |result, operation|
1900
+ yield result, operation if block_given?
1901
+ return result
1902
+ end
1903
+ rescue ::Gapic::Rest::Error => e
1904
+ raise ::Google::Cloud::Error.from_error(e)
1905
+ end
1906
+
1512
1907
  ##
1513
1908
  # Configuration class for the CloudTasks REST API.
1514
1909
  #
@@ -1597,6 +1992,13 @@ module Google
1597
1992
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
1598
1993
  config_attr :quota_project, nil, ::String, nil
1599
1994
 
1995
+ # @private
1996
+ # Overrides for http bindings for the RPCs of this service
1997
+ # are only used when this service is used as mixin, and only
1998
+ # by the host service.
1999
+ # @return [::Hash{::Symbol=>::Array<::Gapic::Rest::GrpcTranscoder::HttpBinding>}]
2000
+ config_attr :bindings_override, {}, ::Hash, nil
2001
+
1600
2002
  # @private
1601
2003
  def initialize parent_config = nil
1602
2004
  @parent_config = parent_config unless parent_config.nil?
@@ -1714,6 +2116,11 @@ module Google
1714
2116
  # @return [::Gapic::Config::Method]
1715
2117
  #
1716
2118
  attr_reader :run_task
2119
+ ##
2120
+ # RPC-specific configuration for `buffer_task`
2121
+ # @return [::Gapic::Config::Method]
2122
+ #
2123
+ attr_reader :buffer_task
1717
2124
 
1718
2125
  # @private
1719
2126
  def initialize parent_rpcs = nil
@@ -1749,6 +2156,8 @@ module Google
1749
2156
  @delete_task = ::Gapic::Config::Method.new delete_task_config
1750
2157
  run_task_config = parent_rpcs.run_task if parent_rpcs.respond_to? :run_task
1751
2158
  @run_task = ::Gapic::Config::Method.new run_task_config
2159
+ buffer_task_config = parent_rpcs.buffer_task if parent_rpcs.respond_to? :buffer_task
2160
+ @buffer_task = ::Gapic::Config::Method.new buffer_task_config
1752
2161
 
1753
2162
  yield self if block_given?
1754
2163
  end