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.



1303
1304
1305
# File 'lib/google/apis/cloudtasks_v2beta3/classes.rb', line 1303

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



1209
1210
1211
# File 'lib/google/apis/cloudtasks_v2beta3/classes.rb', line 1209

def app_engine_http_queue
  @app_engine_http_queue
end

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



1215
1216
1217
# File 'lib/google/apis/cloudtasks_v2beta3/classes.rb', line 1215

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)


1230
1231
1232
# File 'lib/google/apis/cloudtasks_v2beta3/classes.rb', line 1230

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)


1240
1241
1242
# File 'lib/google/apis/cloudtasks_v2beta3/classes.rb', line 1240

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



1248
1249
1250
# File 'lib/google/apis/cloudtasks_v2beta3/classes.rb', line 1248

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



1253
1254
1255
# File 'lib/google/apis/cloudtasks_v2beta3/classes.rb', line 1253

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



1259
1260
1261
# File 'lib/google/apis/cloudtasks_v2beta3/classes.rb', line 1259

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)


1267
1268
1269
# File 'lib/google/apis/cloudtasks_v2beta3/classes.rb', line 1267

def state
  @state
end

#statsGoogle::Apis::CloudtasksV2beta3::QueueStats

Statistics for a queue. Corresponds to the JSON property stats



1272
1273
1274
# File 'lib/google/apis/cloudtasks_v2beta3/classes.rb', line 1272

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)


1283
1284
1285
# File 'lib/google/apis/cloudtasks_v2beta3/classes.rb', line 1283

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)


1294
1295
1296
# File 'lib/google/apis/cloudtasks_v2beta3/classes.rb', line 1294

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)


1301
1302
1303
# File 'lib/google/apis/cloudtasks_v2beta3/classes.rb', line 1301

def type
  @type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
# File 'lib/google/apis/cloudtasks_v2beta3/classes.rb', line 1308

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