Class: Google::Apis::CloudtasksV2beta3::Queue

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
lib/google/apis/cloudtasks_v2beta3/classes.rb,
lib/google/apis/cloudtasks_v2beta3/representations.rb,
lib/google/apis/cloudtasks_v2beta3/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, queue types, and others.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Queue

Returns a new instance of Queue.



1037
1038
1039
# File 'lib/google/apis/cloudtasks_v2beta3/classes.rb', line 1037

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

Instance Attribute Details

#app_engine_http_queueGoogle::Apis::CloudtasksV2beta3::AppEngineHttpQueue

App Engine HTTP queue. The task will be delivered to the App Engine application hostname specified by its AppEngineHttpQueue and AppEngineHttpRequest. The documentation for AppEngineHttpRequest explains how the task's host URL is constructed. Using AppEngineHttpQueue 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 appEngineHttpQueue



949
950
951
# File 'lib/google/apis/cloudtasks_v2beta3/classes.rb', line 949

def app_engine_http_queue
  @app_engine_http_queue
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)


964
965
966
# File 'lib/google/apis/cloudtasks_v2beta3/classes.rb', line 964

def name
  @name
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)


974
975
976
# File 'lib/google/apis/cloudtasks_v2beta3/classes.rb', line 974

def purge_time
  @purge_time
end

#rate_limitsGoogle::Apis::CloudtasksV2beta3::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



982
983
984
# File 'lib/google/apis/cloudtasks_v2beta3/classes.rb', line 982

def rate_limits
  @rate_limits
end

#retry_configGoogle::Apis::CloudtasksV2beta3::RetryConfig

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



987
988
989
# File 'lib/google/apis/cloudtasks_v2beta3/classes.rb', line 987

def retry_config
  @retry_config
end

#stackdriver_logging_configGoogle::Apis::CloudtasksV2beta3::StackdriverLoggingConfig

Configuration options for writing logs to Stackdriver Logging. Corresponds to the JSON property stackdriverLoggingConfig



993
994
995
# File 'lib/google/apis/cloudtasks_v2beta3/classes.rb', line 993

def stackdriver_logging_config
  @stackdriver_logging_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)


1001
1002
1003
# File 'lib/google/apis/cloudtasks_v2beta3/classes.rb', line 1001

def state
  @state
end

#statsGoogle::Apis::CloudtasksV2beta3::QueueStats

Statistics for a queue. Corresponds to the JSON property stats



1006
1007
1008
# File 'lib/google/apis/cloudtasks_v2beta3/classes.rb', line 1006

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)


1017
1018
1019
# File 'lib/google/apis/cloudtasks_v2beta3/classes.rb', line 1017

def task_ttl
  @task_ttl
end

#tombstone_ttlString

The task tombstone time to live (TTL). After a task is deleted or executed, 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)


1028
1029
1030
# File 'lib/google/apis/cloudtasks_v2beta3/classes.rb', line 1028

def tombstone_ttl
  @tombstone_ttl
end

#typeString

Immutable. The type of a queue (push or pull). Queue.type is an immutable property of the queue that is set at the queue creation time. When left unspecified, the default value of PUSH is selected. Corresponds to the JSON property type

Returns:

  • (String)


1035
1036
1037
# File 'lib/google/apis/cloudtasks_v2beta3/classes.rb', line 1035

def type
  @type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
# File 'lib/google/apis/cloudtasks_v2beta3/classes.rb', line 1042

def update!(**args)
  @app_engine_http_queue = args[:app_engine_http_queue] if args.key?(:app_engine_http_queue)
  @name = args[:name] if args.key?(:name)
  @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)
  @stackdriver_logging_config = args[:stackdriver_logging_config] if args.key?(:stackdriver_logging_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)
  @type = args[:type] if args.key?(:type)
end