Class: Google::Apis::CloudtasksV2beta2::Queue

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
lib/google/apis/cloudtasks_v2beta2/classes.rb,
lib/google/apis/cloudtasks_v2beta2/representations.rb,
lib/google/apis/cloudtasks_v2beta2/representations.rb

Overview

A queue is a container of related tasks. Queues are configured to manage how those tasks are dispatched. Configurable properties include rate limits, retry options, target types, and others.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Queue

Returns a new instance of Queue.



1512
1513
1514
# File 'lib/google/apis/cloudtasks_v2beta2/classes.rb', line 1512

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#app_engine_http_targetGoogle::Apis::CloudtasksV2beta2::AppEngineHttpTarget

App Engine HTTP target. The task will be delivered to the App Engine application hostname specified by its AppEngineHttpTarget and AppEngineHttpRequest. The documentation for AppEngineHttpRequest explains how the task's host URL is constructed. Using AppEngineHttpTarget requires appengine.applications.get Google IAM permission for the project and the following scope: https://www.googleapis.com/auth/cloud-platform Corresponds to the JSON property appEngineHttpTarget



1426
1427
1428
# File 'lib/google/apis/cloudtasks_v2beta2/classes.rb', line 1426

def app_engine_http_target
  @app_engine_http_target
end

#http_targetGoogle::Apis::CloudtasksV2beta2::HttpTarget

HTTP target. When specified as a Queue, all the tasks with [HttpRequest] will be overridden according to the target. Corresponds to the JSON property httpTarget



1432
1433
1434
# File 'lib/google/apis/cloudtasks_v2beta2/classes.rb', line 1432

def http_target
  @http_target
end

#nameString

Caller-specified and required in CreateQueue, after which it becomes output only. The queue name. The queue name must have the following format: projects/ PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID * PROJECT_ID can contain letters ([A-Za-z]), numbers ([0-9]), hyphens (-), colons (:), or periods (.). For more information, see Identifying projects * LOCATION_ID is the canonical ID for the queue's location. The list of available locations can be obtained by calling ListLocations. For more information, see https://cloud.google.com/about/locations/. * QUEUE_ID can contain letters ([A-Za-z]), numbers ([0-9]), or hyphens (-). The maximum length is 100 characters. Corresponds to the JSON property name

Returns:

  • (String)


1447
1448
1449
# File 'lib/google/apis/cloudtasks_v2beta2/classes.rb', line 1447

def name
  @name
end

#pull_targetGoogle::Apis::CloudtasksV2beta2::PullTarget

Pull target. Corresponds to the JSON property pullTarget



1452
1453
1454
# File 'lib/google/apis/cloudtasks_v2beta2/classes.rb', line 1452

def pull_target
  @pull_target
end

#purge_timeString

Output only. The last time this queue was purged. All tasks that were created before this time were purged. A queue can be purged using PurgeQueue, the App Engine Task Queue SDK, or the Cloud Console. Purge time will be truncated to the nearest microsecond. Purge time will be unset if the queue has never been purged. Corresponds to the JSON property purgeTime

Returns:

  • (String)


1462
1463
1464
# File 'lib/google/apis/cloudtasks_v2beta2/classes.rb', line 1462

def purge_time
  @purge_time
end

#rate_limitsGoogle::Apis::CloudtasksV2beta2::RateLimits

Rate limits. This message determines the maximum rate that tasks can be dispatched by a queue, regardless of whether the dispatch is a first task attempt or a retry. Note: The debugging command, RunTask, will run a task even if the queue has reached its RateLimits. Corresponds to the JSON property rateLimits



1470
1471
1472
# File 'lib/google/apis/cloudtasks_v2beta2/classes.rb', line 1470

def rate_limits
  @rate_limits
end

#retry_configGoogle::Apis::CloudtasksV2beta2::RetryConfig

Retry config. These settings determine how a failed task attempt is retried. Corresponds to the JSON property retryConfig



1475
1476
1477
# File 'lib/google/apis/cloudtasks_v2beta2/classes.rb', line 1475

def retry_config
  @retry_config
end

#stateString

Output only. The state of the queue. state can only be changed by called PauseQueue, ResumeQueue, or uploading queue.yaml/xml. UpdateQueue cannot be used to change state. Corresponds to the JSON property state

Returns:

  • (String)


1483
1484
1485
# File 'lib/google/apis/cloudtasks_v2beta2/classes.rb', line 1483

def state
  @state
end

#statsGoogle::Apis::CloudtasksV2beta2::QueueStats

Statistics for a queue. Corresponds to the JSON property stats



1488
1489
1490
# File 'lib/google/apis/cloudtasks_v2beta2/classes.rb', line 1488

def stats
  @stats
end

#task_ttlString

The maximum amount of time that a task will be retained in this queue. Queues created by Cloud Tasks have a default task_ttl of 31 days. After a task has lived for task_ttl, the task will be deleted regardless of whether it was dispatched or not. The task_ttl for queues created via queue.yaml/xml is equal to the maximum duration because there is a storage quota for these queues. To view the maximum valid duration, see the documentation for Duration. Corresponds to the JSON property taskTtl

Returns:

  • (String)


1499
1500
1501
# File 'lib/google/apis/cloudtasks_v2beta2/classes.rb', line 1499

def task_ttl
  @task_ttl
end

#tombstone_ttlString

The task tombstone time to live (TTL). After a task is deleted or completed, the task's tombstone is retained for the length of time specified by tombstone_ttl. The tombstone is used by task de-duplication; another task with the same name can't be created until the tombstone has expired. For more information about task de-duplication, see the documentation for CreateTaskRequest. Queues created by Cloud Tasks have a default tombstone_ttl of 1 hour. Corresponds to the JSON property tombstoneTtl

Returns:

  • (String)


1510
1511
1512
# File 'lib/google/apis/cloudtasks_v2beta2/classes.rb', line 1510

def tombstone_ttl
  @tombstone_ttl
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
# File 'lib/google/apis/cloudtasks_v2beta2/classes.rb', line 1517

def update!(**args)
  @app_engine_http_target = args[:app_engine_http_target] if args.key?(:app_engine_http_target)
  @http_target = args[:http_target] if args.key?(:http_target)
  @name = args[:name] if args.key?(:name)
  @pull_target = args[:pull_target] if args.key?(:pull_target)
  @purge_time = args[:purge_time] if args.key?(:purge_time)
  @rate_limits = args[:rate_limits] if args.key?(:rate_limits)
  @retry_config = args[:retry_config] if args.key?(:retry_config)
  @state = args[:state] if args.key?(:state)
  @stats = args[:stats] if args.key?(:stats)
  @task_ttl = args[:task_ttl] if args.key?(:task_ttl)
  @tombstone_ttl = args[:tombstone_ttl] if args.key?(:tombstone_ttl)
end