Migrate Tasks Beta 3 to GAPIC v2.

Committer: @lukesneeringer
PiperOrigin-RevId: 281769519
This commit is contained in:
Google APIs 2019-11-21 09:44:53 -08:00 committed by Copybara-Service
parent f95883b15a
commit 17561f5997
6 changed files with 530 additions and 425 deletions

View File

@ -3,13 +3,14 @@ common:
api_version: v2beta3
organization_name: google-cloud
proto_deps:
- name: google-common-protos
- name: google-iam-v1
proto_path: google/iam/v1
- name: google-common-protos
- name: google-iam-v1
proto_path: google/iam/v1
src_proto_paths:
- v2beta3
service_yaml: cloudtasks_v2beta3.yaml
service_yaml: v2beta3/cloudtasks_v2beta3.yaml
gapic_yaml: v2beta3/cloudtasks_gapic.yaml
proto_package: google.cloud.tasks.v2beta3
artifacts:
- name: gapic_config
type: GAPIC_CONFIG

View File

@ -0,0 +1,434 @@
type: com.google.api.codegen.ConfigProto
config_schema_version: 1.0.0
# The settings of generated code in a specific language.
language_settings:
java:
package_name: com.google.cloud.tasks.v2beta3
python:
package_name: google.cloud.tasks_v2beta3.gapic
go:
package_name: cloud.google.com/go/cloudtasks/apiv2beta3
csharp:
package_name: Google.Cloud.Tasks.V2Beta3
ruby:
package_name: Google::Cloud::Tasks::V2beta3
php:
package_name: Google\Cloud\Tasks\V2beta3
nodejs:
package_name: tasks.v2beta3
# A list of API interface configurations.
interfaces:
- name: google.cloud.tasks.v2beta3.CloudTasks
# A list of resource collection configurations.
# Consists of a name_pattern and an entity_name.
# The name_pattern is a pattern to describe the names of the resources of this
# collection, using the platform's conventions for URI patterns. A generator
# may use this to generate methods to compose and decompose such names. The
# pattern should use named placeholders as in `shelves/{shelf}/books/{book}`;
# those will be taken as hints for the parameter names of the generated
# methods. If empty, no name methods are generated.
# The entity_name is the name to be used as a basis for generated methods and
# classes.
collections:
- name_pattern: projects/{project}
entity_name: project
language_overrides:
- language: csharp
common_resource_name: Google.Api.Gax.ResourceNames.ProjectName
- name_pattern: projects/{project}/locations/{location}
entity_name: location
- name_pattern: projects/{project}/locations/{location}/queues/{queue}
entity_name: queue
- name_pattern: projects/{project}/locations/{location}/queues/{queue}/tasks/{task}
entity_name: task
# Definition for retryable codes.
retry_codes_def:
- name: idempotent
retry_codes:
- DEADLINE_EXCEEDED
- UNAVAILABLE
- name: non_idempotent
retry_codes: []
# Definition for retry/backoff parameters.
retry_params_def:
- name: default
initial_retry_delay_millis: 100
retry_delay_multiplier: 1.3
max_retry_delay_millis: 60000
initial_rpc_timeout_millis: 20000
rpc_timeout_multiplier: 1
max_rpc_timeout_millis: 20000
total_timeout_millis: 600000
# A list of method configurations.
# Common properties:
#
# name - The simple name of the method.
#
# flattening - Specifies the configuration for parameter flattening.
# Describes the parameter groups for which a generator should produce method
# overloads which allow a client to directly pass request message fields as
# method parameters. This information may or may not be used, depending on
# the target language.
# Consists of groups, which each represent a list of parameters to be
# flattened. Each parameter listed must be a field of the request message.
#
# required_fields - Fields that are always required for a request to be
# valid.
#
# resource_name_treatment - An enum that specifies how to treat the resource
# name formats defined in the field_name_patterns and
# response_field_name_patterns fields.
# UNSET: default value
# NONE: the collection configs will not be used by the generated code.
# VALIDATE: string fields will be validated by the client against the
# specified resource name formats.
# STATIC_TYPES: the client will use generated types for resource names.
#
# page_streaming - Specifies the configuration for paging.
# Describes information for generating a method which transforms a paging
# list RPC into a stream of resources.
# Consists of a request and a response.
# The request specifies request information of the list method. It defines
# which fields match the paging pattern in the request. The request consists
# of a page_size_field and a token_field. The page_size_field is the name of
# the optional field specifying the maximum number of elements to be
# returned in the response. The token_field is the name of the field in the
# request containing the page token.
# The response specifies response information of the list method. It defines
# which fields match the paging pattern in the response. The response
# consists of a token_field and a resources_field. The token_field is the
# name of the field in the response containing the next page token. The
# resources_field is the name of the field in the response containing the
# list of resources belonging to the page.
#
# retry_codes_name - Specifies the configuration for retryable codes. The
# name must be defined in interfaces.retry_codes_def.
#
# retry_params_name - Specifies the configuration for retry/backoff
# parameters. The name must be defined in interfaces.retry_params_def.
#
# field_name_patterns - Maps the field name of the request type to
# entity_name of interfaces.collections.
# Specifies the string pattern that the field must follow.
#
# timeout_millis - Specifies the default timeout for a non-retrying call. If
# the call is retrying, refer to retry_params_name instead.
methods:
- name: ListQueues
resource_name_treatment: STATIC_TYPES
flattening:
groups:
- parameters:
- parent
required_fields:
- parent
header_request_params:
- parent
page_streaming:
request:
page_size_field: page_size
token_field: page_token
response:
token_field: next_page_token
resources_field: queues
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
parent: location
timeout_millis: 10000
- name: GetQueue
resource_name_treatment: STATIC_TYPES
flattening:
groups:
- parameters:
- name
required_fields:
- name
header_request_params:
- name
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
name: queue
timeout_millis: 10000
- name: CreateQueue
resource_name_treatment: STATIC_TYPES
flattening:
groups:
- parameters:
- parent
- queue
required_fields:
- parent
- queue
header_request_params:
- parent
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
parent: location
timeout_millis: 10000
- name: UpdateQueue
resource_name_treatment: STATIC_TYPES
flattening:
groups:
- parameters:
- queue
- update_mask
required_fields:
- queue
header_request_params:
- queue.name
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
queue.name: queue
timeout_millis: 10000
- name: DeleteQueue
resource_name_treatment: STATIC_TYPES
flattening:
groups:
- parameters:
- name
required_fields:
- name
header_request_params:
- name
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
name: queue
timeout_millis: 10000
- name: PurgeQueue
resource_name_treatment: STATIC_TYPES
flattening:
groups:
- parameters:
- name
required_fields:
- name
header_request_params:
- name
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
name: queue
timeout_millis: 10000
- name: PauseQueue
resource_name_treatment: STATIC_TYPES
flattening:
groups:
- parameters:
- name
required_fields:
- name
header_request_params:
- name
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
name: queue
timeout_millis: 10000
- name: ResumeQueue
resource_name_treatment: STATIC_TYPES
flattening:
groups:
- parameters:
- name
required_fields:
- name
header_request_params:
- name
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
name: queue
timeout_millis: 10000
- name: GetIamPolicy
resource_name_treatment: STATIC_TYPES
flattening:
groups:
- parameters:
- resource
required_fields:
- resource
header_request_params:
- resource
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
resource: queue
timeout_millis: 10000
- name: SetIamPolicy
resource_name_treatment: STATIC_TYPES
flattening:
groups:
- parameters:
- resource
- policy
required_fields:
- resource
- policy
header_request_params:
- resource
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
resource: queue
timeout_millis: 10000
- name: TestIamPermissions
resource_name_treatment: STATIC_TYPES
flattening:
groups:
- parameters:
- resource
- permissions
required_fields:
- resource
- permissions
header_request_params:
- resource
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
resource: queue
timeout_millis: 10000
- name: ListTasks
resource_name_treatment: STATIC_TYPES
flattening:
groups:
- parameters:
- parent
required_fields:
- parent
header_request_params:
- parent
page_streaming:
request:
page_size_field: page_size
token_field: page_token
response:
token_field: next_page_token
resources_field: tasks
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
parent: queue
timeout_millis: 10000
- name: GetTask
resource_name_treatment: STATIC_TYPES
flattening:
groups:
- parameters:
- name
required_fields:
- name
header_request_params:
- name
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
name: task
timeout_millis: 10000
- name: CreateTask
resource_name_treatment: STATIC_TYPES
flattening:
groups:
- parameters:
- parent
- task
required_fields:
- parent
- task
header_request_params:
- parent
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
parent: queue
timeout_millis: 10000
- name: DeleteTask
resource_name_treatment: STATIC_TYPES
flattening:
groups:
- parameters:
- name
required_fields:
- name
header_request_params:
- name
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
name: task
timeout_millis: 10000
- name: RunTask
resource_name_treatment: STATIC_TYPES
flattening:
groups:
- parameters:
- name
required_fields:
- name
header_request_params:
- name
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
name: task
timeout_millis: 10000
resource_name_generation:
- message_name: Queue
field_entity_map:
name: queue
- message_name: Task
field_entity_map:
name: task
- message_name: ListQueuesRequest
field_entity_map:
parent: location
- message_name: GetQueueRequest
field_entity_map:
name: queue
- message_name: CreateQueueRequest
field_entity_map:
parent: location
- message_name: UpdateQueueRequest
field_entity_map:
queue.name: queue
- message_name: DeleteQueueRequest
field_entity_map:
name: queue
- message_name: PurgeQueueRequest
field_entity_map:
name: queue
- message_name: PauseQueueRequest
field_entity_map:
name: queue
- message_name: ResumeQueueRequest
field_entity_map:
name: queue
- message_name: ListTasksRequest
field_entity_map:
parent: queue
- message_name: GetTaskRequest
field_entity_map:
name: task
- message_name: CreateTaskRequest
field_entity_map:
parent: queue
- message_name: DeleteTaskRequest
field_entity_map:
name: task
- message_name: RunTaskRequest
field_entity_map:
name: task
- message_name: google.iam.v1.GetIamPolicyRequest
field_entity_map:
resource: "*"
- message_name: google.iam.v1.SetIamPolicyRequest
field_entity_map:
resource: "*"
- message_name: google.iam.v1.TestIamPermissionsRequest
field_entity_map:
resource: "*"

View File

@ -1,5 +1,5 @@
type: com.google.api.codegen.ConfigProto
config_schema_version: 1.0.0
config_schema_version: 2.0.0
# The settings of generated code in a specific language.
language_settings:
java:
@ -16,420 +16,3 @@ language_settings:
package_name: Google\Cloud\Tasks\V2beta3
nodejs:
package_name: tasks.v2beta3
# A list of API interface configurations.
interfaces:
# The fully qualified name of the API interface.
- name: google.cloud.tasks.v2beta3.CloudTasks
# A list of resource collection configurations.
# Consists of a name_pattern and an entity_name.
# The name_pattern is a pattern to describe the names of the resources of this
# collection, using the platform's conventions for URI patterns. A generator
# may use this to generate methods to compose and decompose such names. The
# pattern should use named placeholders as in `shelves/{shelf}/books/{book}`;
# those will be taken as hints for the parameter names of the generated
# methods. If empty, no name methods are generated.
# The entity_name is the name to be used as a basis for generated methods and
# classes.
collections:
- name_pattern: projects/{project}
entity_name: project
language_overrides:
- language: csharp
common_resource_name: Google.Api.Gax.ResourceNames.ProjectName
- name_pattern: projects/{project}/locations/{location}
entity_name: location
- name_pattern: projects/{project}/locations/{location}/queues/{queue}
entity_name: queue
- name_pattern: projects/{project}/locations/{location}/queues/{queue}/tasks/{task}
entity_name: task
# Definition for retryable codes.
retry_codes_def:
- name: idempotent
retry_codes:
- DEADLINE_EXCEEDED
- UNAVAILABLE
- name: non_idempotent
retry_codes: []
# Definition for retry/backoff parameters.
retry_params_def:
- name: default
initial_retry_delay_millis: 100
retry_delay_multiplier: 1.3
max_retry_delay_millis: 60000
initial_rpc_timeout_millis: 20000
rpc_timeout_multiplier: 1
max_rpc_timeout_millis: 20000
total_timeout_millis: 600000
# A list of method configurations.
# Common properties:
#
# name - The simple name of the method.
#
# flattening - Specifies the configuration for parameter flattening.
# Describes the parameter groups for which a generator should produce method
# overloads which allow a client to directly pass request message fields as
# method parameters. This information may or may not be used, depending on
# the target language.
# Consists of groups, which each represent a list of parameters to be
# flattened. Each parameter listed must be a field of the request message.
#
# required_fields - Fields that are always required for a request to be
# valid.
#
# resource_name_treatment - An enum that specifies how to treat the resource
# name formats defined in the field_name_patterns and
# response_field_name_patterns fields.
# UNSET: default value
# NONE: the collection configs will not be used by the generated code.
# VALIDATE: string fields will be validated by the client against the
# specified resource name formats.
# STATIC_TYPES: the client will use generated types for resource names.
#
# page_streaming - Specifies the configuration for paging.
# Describes information for generating a method which transforms a paging
# list RPC into a stream of resources.
# Consists of a request and a response.
# The request specifies request information of the list method. It defines
# which fields match the paging pattern in the request. The request consists
# of a page_size_field and a token_field. The page_size_field is the name of
# the optional field specifying the maximum number of elements to be
# returned in the response. The token_field is the name of the field in the
# request containing the page token.
# The response specifies response information of the list method. It defines
# which fields match the paging pattern in the response. The response
# consists of a token_field and a resources_field. The token_field is the
# name of the field in the response containing the next page token. The
# resources_field is the name of the field in the response containing the
# list of resources belonging to the page.
#
# retry_codes_name - Specifies the configuration for retryable codes. The
# name must be defined in interfaces.retry_codes_def.
#
# retry_params_name - Specifies the configuration for retry/backoff
# parameters. The name must be defined in interfaces.retry_params_def.
#
# field_name_patterns - Maps the field name of the request type to
# entity_name of interfaces.collections.
# Specifies the string pattern that the field must follow.
#
# timeout_millis - Specifies the default timeout for a non-retrying call. If
# the call is retrying, refer to retry_params_name instead.
methods:
- name: ListQueues
resource_name_treatment: STATIC_TYPES
flattening:
groups:
- parameters:
- parent
required_fields:
- parent
header_request_params:
- parent
page_streaming:
request:
page_size_field: page_size
token_field: page_token
response:
token_field: next_page_token
resources_field: queues
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
parent: location
timeout_millis: 10000
- name: GetQueue
resource_name_treatment: STATIC_TYPES
flattening:
groups:
- parameters:
- name
required_fields:
- name
header_request_params:
- name
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
name: queue
timeout_millis: 10000
- name: CreateQueue
resource_name_treatment: STATIC_TYPES
flattening:
groups:
- parameters:
- parent
- queue
required_fields:
- parent
- queue
header_request_params:
- parent
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
parent: location
timeout_millis: 10000
- name: UpdateQueue
resource_name_treatment: STATIC_TYPES
flattening:
groups:
- parameters:
- queue
- update_mask
required_fields:
- queue
header_request_params:
- queue.name
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
queue.name: queue
timeout_millis: 10000
- name: DeleteQueue
resource_name_treatment: STATIC_TYPES
flattening:
groups:
- parameters:
- name
required_fields:
- name
header_request_params:
- name
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
name: queue
timeout_millis: 10000
- name: PurgeQueue
resource_name_treatment: STATIC_TYPES
flattening:
groups:
- parameters:
- name
required_fields:
- name
header_request_params:
- name
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
name: queue
timeout_millis: 10000
- name: PauseQueue
resource_name_treatment: STATIC_TYPES
flattening:
groups:
- parameters:
- name
required_fields:
- name
header_request_params:
- name
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
name: queue
timeout_millis: 10000
- name: ResumeQueue
resource_name_treatment: STATIC_TYPES
flattening:
groups:
- parameters:
- name
required_fields:
- name
header_request_params:
- name
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
name: queue
timeout_millis: 10000
- name: GetIamPolicy
resource_name_treatment: STATIC_TYPES
flattening:
groups:
- parameters:
- resource
required_fields:
- resource
header_request_params:
- resource
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
resource: queue
timeout_millis: 10000
- name: SetIamPolicy
resource_name_treatment: STATIC_TYPES
flattening:
groups:
- parameters:
- resource
- policy
required_fields:
- resource
- policy
header_request_params:
- resource
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
resource: queue
timeout_millis: 10000
- name: TestIamPermissions
resource_name_treatment: STATIC_TYPES
flattening:
groups:
- parameters:
- resource
- permissions
required_fields:
- resource
- permissions
header_request_params:
- resource
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
resource: queue
timeout_millis: 10000
- name: ListTasks
resource_name_treatment: STATIC_TYPES
flattening:
groups:
- parameters:
- parent
required_fields:
- parent
header_request_params:
- parent
page_streaming:
request:
page_size_field: page_size
token_field: page_token
response:
token_field: next_page_token
resources_field: tasks
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
parent: queue
timeout_millis: 10000
- name: GetTask
resource_name_treatment: STATIC_TYPES
flattening:
groups:
- parameters:
- name
required_fields:
- name
header_request_params:
- name
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
name: task
timeout_millis: 10000
- name: CreateTask
resource_name_treatment: STATIC_TYPES
flattening:
groups:
- parameters:
- parent
- task
required_fields:
- parent
- task
header_request_params:
- parent
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
parent: queue
timeout_millis: 10000
- name: DeleteTask
resource_name_treatment: STATIC_TYPES
flattening:
groups:
- parameters:
- name
required_fields:
- name
header_request_params:
- name
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
name: task
timeout_millis: 10000
- name: RunTask
resource_name_treatment: STATIC_TYPES
flattening:
groups:
- parameters:
- name
required_fields:
- name
header_request_params:
- name
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
name: task
timeout_millis: 10000
resource_name_generation:
- message_name: Queue
field_entity_map:
name: queue
- message_name: Task
field_entity_map:
name: task
- message_name: ListQueuesRequest
field_entity_map:
parent: location
- message_name: GetQueueRequest
field_entity_map:
name: queue
- message_name: CreateQueueRequest
field_entity_map:
parent: location
- message_name: UpdateQueueRequest
field_entity_map:
queue.name: queue
- message_name: DeleteQueueRequest
field_entity_map:
name: queue
- message_name: PurgeQueueRequest
field_entity_map:
name: queue
- message_name: PauseQueueRequest
field_entity_map:
name: queue
- message_name: ResumeQueueRequest
field_entity_map:
name: queue
- message_name: ListTasksRequest
field_entity_map:
parent: queue
- message_name: GetTaskRequest
field_entity_map:
name: task
- message_name: CreateTaskRequest
field_entity_map:
parent: queue
- message_name: DeleteTaskRequest
field_entity_map:
name: task
- message_name: RunTaskRequest
field_entity_map:
name: task
- message_name: google.iam.v1.GetIamPolicyRequest
field_entity_map:
resource: "*"
- message_name: google.iam.v1.SetIamPolicyRequest
field_entity_map:
resource: "*"
- message_name: google.iam.v1.TestIamPermissionsRequest
field_entity_map:
resource: "*"

View File

@ -0,0 +1,87 @@
{
"methodConfig": [
{
"name": [
{
"service": "google.cloud.tasks.v2beta3.CloudTasks",
"method": "CreateQueue"
},
{
"service": "google.cloud.tasks.v2beta3.CloudTasks",
"method": "UpdateQueue"
},
{
"service": "google.cloud.tasks.v2beta3.CloudTasks",
"method": "PurgeQueue"
},
{
"service": "google.cloud.tasks.v2beta3.CloudTasks",
"method": "PauseQueue"
},
{
"service": "google.cloud.tasks.v2beta3.CloudTasks",
"method": "ResumeQueue"
},
{
"service": "google.cloud.tasks.v2beta3.CloudTasks",
"method": "SetIamPolicy"
},
{
"service": "google.cloud.tasks.v2beta3.CloudTasks",
"method": "CreateTask"
},
{
"service": "google.cloud.tasks.v2beta3.CloudTasks",
"method": "RunTask"
}
],
"timeout": "600s"
},
{
"name": [
{
"service": "google.cloud.tasks.v2beta3.CloudTasks",
"method": "ListQueues"
},
{
"service": "google.cloud.tasks.v2beta3.CloudTasks",
"method": "GetQueue"
},
{
"service": "google.cloud.tasks.v2beta3.CloudTasks",
"method": "DeleteQueue"
},
{
"service": "google.cloud.tasks.v2beta3.CloudTasks",
"method": "GetIamPolicy"
},
{
"service": "google.cloud.tasks.v2beta3.CloudTasks",
"method": "TestIamPermissions"
},
{
"service": "google.cloud.tasks.v2beta3.CloudTasks",
"method": "ListTasks"
},
{
"service": "google.cloud.tasks.v2beta3.CloudTasks",
"method": "GetTask"
},
{
"service": "google.cloud.tasks.v2beta3.CloudTasks",
"method": "DeleteTask"
}
],
"timeout": "600s",
"retryPolicy": {
"initialBackoff": "0.100s",
"maxBackoff": "60s",
"backoffMultiplier": 1.3,
"retryableStatusCodes": [
"DEADLINE_EXCEEDED",
"UNAVAILABLE"
]
}
}
]
}

View File

@ -28,7 +28,7 @@ option java_package = "com.google.cloud.tasks.v2beta3";
//
// The task will be pushed to the worker as an HTTP request. If the worker
// or the redirected worker acknowledges the task by returning a successful HTTP
// response code ([`200` - `299`]), the task will removed from the queue. If
// response code ([`200` - `299`]), the task will be removed from the queue. If
// any other HTTP response code is returned or no response is received, the
// task will be retried according to the following:
//
@ -47,7 +47,7 @@ option java_package = "com.google.cloud.tasks.v2beta3";
// errors is high, Cloud Tasks will use a higher backoff rate. The retry
// specified in the `Retry-After` HTTP response header is considered.
//
// * To prevent traffic spikes and to smooth sudden large traffic spikes,
// * To prevent traffic spikes and to smooth sudden increases in traffic,
// dispatches ramp up slowly when the queue is newly created or idle and
// if large numbers of tasks suddenly become available to dispatch (due to
// spikes in create task rates, the queue being unpaused, or many tasks
@ -279,7 +279,7 @@ message AppEngineHttpRequest {
// In addition, Cloud Tasks sets some headers when the task is dispatched,
// such as headers containing information about the task; see
// [request
// headers](https://cloud.google.com/appengine/docs/python/taskqueue/push/creating-handlers#reading_request_headers).
// headers](https://cloud.google.com/tasks/docs/creating-appengine-handlers#reading_request_headers).
// These headers are set only when the task is dispatched, so they are not
// visible when the task is returned in a Cloud Tasks response.
//