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.



1515
1516
1517
# File 'lib/google/apis/cloudtasks_v2beta2/classes.rb', line 1515

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



1429
1430
1431
# File 'lib/google/apis/cloudtasks_v2beta2/classes.rb', line 1429

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



1435
1436
1437
# File 'lib/google/apis/cloudtasks_v2beta2/classes.rb', line 1435

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)


1450
1451
1452
# File 'lib/google/apis/cloudtasks_v2beta2/classes.rb', line 1450

def name
  @name
end

#pull_targetGoogle::Apis::CloudtasksV2beta2::PullTarget

Pull target. Corresponds to the JSON property pullTarget



1455
1456
1457
# File 'lib/google/apis/cloudtasks_v2beta2/classes.rb', line 1455

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)


1465
1466
1467
# File 'lib/google/apis/cloudtasks_v2beta2/classes.rb', line 1465

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



1473
1474
1475
# File 'lib/google/apis/cloudtasks_v2beta2/classes.rb', line 1473

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



1478
1479
1480
# File 'lib/google/apis/cloudtasks_v2beta2/classes.rb', line 1478

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)


1486
1487
1488
# File 'lib/google/apis/cloudtasks_v2beta2/classes.rb', line 1486

def state
  @state
end

#statsGoogle::Apis::CloudtasksV2beta2::QueueStats

Statistics for a queue. Corresponds to the JSON property stats



1491
1492
1493
# File 'lib/google/apis/cloudtasks_v2beta2/classes.rb', line 1491

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)


1502
1503
1504
# File 'lib/google/apis/cloudtasks_v2beta2/classes.rb', line 1502

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)


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

def tombstone_ttl
  @tombstone_ttl
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
# File 'lib/google/apis/cloudtasks_v2beta2/classes.rb', line 1520

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