Source code for google.cloud.tasks_v2.proto.target_pb2

# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: google/cloud/tasks_v2/proto/target.proto

import sys

_b = sys.version_info[0] < 3 and (lambda x: x) or (lambda x: x.encode("latin1"))
from google.protobuf.internal import enum_type_wrapper
from google.protobuf import descriptor as _descriptor
from google.protobuf import message as _message
from google.protobuf import reflection as _reflection
from google.protobuf import symbol_database as _symbol_database

# @@protoc_insertion_point(imports)

_sym_db = _symbol_database.Default()


from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2


DESCRIPTOR = _descriptor.FileDescriptor(
    name="google/cloud/tasks_v2/proto/target.proto",
    package="google.cloud.tasks.v2",
    syntax="proto3",
    serialized_options=_b(
        "\n\031com.google.cloud.tasks.v2B\013TargetProtoP\001Z:google.golang.org/genproto/googleapis/cloud/tasks/v2;tasks"
    ),
    serialized_pb=_b(
        '\n(google/cloud/tasks_v2/proto/target.proto\x12\x15google.cloud.tasks.v2\x1a\x1cgoogle/api/annotations.proto"\xb2\x02\n\x14\x41ppEngineHttpRequest\x12\x36\n\x0bhttp_method\x18\x01 \x01(\x0e\x32!.google.cloud.tasks.v2.HttpMethod\x12\x43\n\x12\x61pp_engine_routing\x18\x02 \x01(\x0b\x32\'.google.cloud.tasks.v2.AppEngineRouting\x12\x14\n\x0crelative_uri\x18\x03 \x01(\t\x12I\n\x07headers\x18\x04 \x03(\x0b\x32\x38.google.cloud.tasks.v2.AppEngineHttpRequest.HeadersEntry\x12\x0c\n\x04\x62ody\x18\x05 \x01(\x0c\x1a.\n\x0cHeadersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01"T\n\x10\x41ppEngineRouting\x12\x0f\n\x07service\x18\x01 \x01(\t\x12\x0f\n\x07version\x18\x02 \x01(\t\x12\x10\n\x08instance\x18\x03 \x01(\t\x12\x0c\n\x04host\x18\x04 \x01(\t*s\n\nHttpMethod\x12\x1b\n\x17HTTP_METHOD_UNSPECIFIED\x10\x00\x12\x08\n\x04POST\x10\x01\x12\x07\n\x03GET\x10\x02\x12\x08\n\x04HEAD\x10\x03\x12\x07\n\x03PUT\x10\x04\x12\n\n\x06\x44\x45LETE\x10\x05\x12\t\n\x05PATCH\x10\x06\x12\x0b\n\x07OPTIONS\x10\x07\x42\x66\n\x19\x63om.google.cloud.tasks.v2B\x0bTargetProtoP\x01Z:google.golang.org/genproto/googleapis/cloud/tasks/v2;tasksb\x06proto3'
    ),
    dependencies=[google_dot_api_dot_annotations__pb2.DESCRIPTOR],
)

_HTTPMETHOD = _descriptor.EnumDescriptor(
    name="HttpMethod",
    full_name="google.cloud.tasks.v2.HttpMethod",
    filename=None,
    file=DESCRIPTOR,
    values=[
        _descriptor.EnumValueDescriptor(
            name="HTTP_METHOD_UNSPECIFIED",
            index=0,
            number=0,
            serialized_options=None,
            type=None,
        ),
        _descriptor.EnumValueDescriptor(
            name="POST", index=1, number=1, serialized_options=None, type=None
        ),
        _descriptor.EnumValueDescriptor(
            name="GET", index=2, number=2, serialized_options=None, type=None
        ),
        _descriptor.EnumValueDescriptor(
            name="HEAD", index=3, number=3, serialized_options=None, type=None
        ),
        _descriptor.EnumValueDescriptor(
            name="PUT", index=4, number=4, serialized_options=None, type=None
        ),
        _descriptor.EnumValueDescriptor(
            name="DELETE", index=5, number=5, serialized_options=None, type=None
        ),
        _descriptor.EnumValueDescriptor(
            name="PATCH", index=6, number=6, serialized_options=None, type=None
        ),
        _descriptor.EnumValueDescriptor(
            name="OPTIONS", index=7, number=7, serialized_options=None, type=None
        ),
    ],
    containing_type=None,
    serialized_options=None,
    serialized_start=492,
    serialized_end=607,
)
_sym_db.RegisterEnumDescriptor(_HTTPMETHOD)

HttpMethod = enum_type_wrapper.EnumTypeWrapper(_HTTPMETHOD)
HTTP_METHOD_UNSPECIFIED = 0
POST = 1
GET = 2
HEAD = 3
PUT = 4
DELETE = 5
PATCH = 6
OPTIONS = 7


_APPENGINEHTTPREQUEST_HEADERSENTRY = _descriptor.Descriptor(
    name="HeadersEntry",
    full_name="google.cloud.tasks.v2.AppEngineHttpRequest.HeadersEntry",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="key",
            full_name="google.cloud.tasks.v2.AppEngineHttpRequest.HeadersEntry.key",
            index=0,
            number=1,
            type=9,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b("").decode("utf-8"),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="value",
            full_name="google.cloud.tasks.v2.AppEngineHttpRequest.HeadersEntry.value",
            index=1,
            number=2,
            type=9,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b("").decode("utf-8"),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=_b("8\001"),
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=358,
    serialized_end=404,
)

_APPENGINEHTTPREQUEST = _descriptor.Descriptor(
    name="AppEngineHttpRequest",
    full_name="google.cloud.tasks.v2.AppEngineHttpRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="http_method",
            full_name="google.cloud.tasks.v2.AppEngineHttpRequest.http_method",
            index=0,
            number=1,
            type=14,
            cpp_type=8,
            label=1,
            has_default_value=False,
            default_value=0,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="app_engine_routing",
            full_name="google.cloud.tasks.v2.AppEngineHttpRequest.app_engine_routing",
            index=1,
            number=2,
            type=11,
            cpp_type=10,
            label=1,
            has_default_value=False,
            default_value=None,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="relative_uri",
            full_name="google.cloud.tasks.v2.AppEngineHttpRequest.relative_uri",
            index=2,
            number=3,
            type=9,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b("").decode("utf-8"),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="headers",
            full_name="google.cloud.tasks.v2.AppEngineHttpRequest.headers",
            index=3,
            number=4,
            type=11,
            cpp_type=10,
            label=3,
            has_default_value=False,
            default_value=[],
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="body",
            full_name="google.cloud.tasks.v2.AppEngineHttpRequest.body",
            index=4,
            number=5,
            type=12,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b(""),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[_APPENGINEHTTPREQUEST_HEADERSENTRY],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=98,
    serialized_end=404,
)


_APPENGINEROUTING = _descriptor.Descriptor(
    name="AppEngineRouting",
    full_name="google.cloud.tasks.v2.AppEngineRouting",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="service",
            full_name="google.cloud.tasks.v2.AppEngineRouting.service",
            index=0,
            number=1,
            type=9,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b("").decode("utf-8"),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="version",
            full_name="google.cloud.tasks.v2.AppEngineRouting.version",
            index=1,
            number=2,
            type=9,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b("").decode("utf-8"),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="instance",
            full_name="google.cloud.tasks.v2.AppEngineRouting.instance",
            index=2,
            number=3,
            type=9,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b("").decode("utf-8"),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="host",
            full_name="google.cloud.tasks.v2.AppEngineRouting.host",
            index=3,
            number=4,
            type=9,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b("").decode("utf-8"),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=406,
    serialized_end=490,
)

_APPENGINEHTTPREQUEST_HEADERSENTRY.containing_type = _APPENGINEHTTPREQUEST
_APPENGINEHTTPREQUEST.fields_by_name["http_method"].enum_type = _HTTPMETHOD
_APPENGINEHTTPREQUEST.fields_by_name[
    "app_engine_routing"
].message_type = _APPENGINEROUTING
_APPENGINEHTTPREQUEST.fields_by_name[
    "headers"
].message_type = _APPENGINEHTTPREQUEST_HEADERSENTRY
DESCRIPTOR.message_types_by_name["AppEngineHttpRequest"] = _APPENGINEHTTPREQUEST
DESCRIPTOR.message_types_by_name["AppEngineRouting"] = _APPENGINEROUTING
DESCRIPTOR.enum_types_by_name["HttpMethod"] = _HTTPMETHOD
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

AppEngineHttpRequest = _reflection.GeneratedProtocolMessageType(
    "AppEngineHttpRequest",
    (_message.Message,),
    dict(
        HeadersEntry=_reflection.GeneratedProtocolMessageType(
            "HeadersEntry",
            (_message.Message,),
            dict(
                DESCRIPTOR=_APPENGINEHTTPREQUEST_HEADERSENTRY,
                __module__="google.cloud.tasks_v2.proto.target_pb2"
                # @@protoc_insertion_point(class_scope:google.cloud.tasks.v2.AppEngineHttpRequest.HeadersEntry)
            ),
        ),
        DESCRIPTOR=_APPENGINEHTTPREQUEST,
        __module__="google.cloud.tasks_v2.proto.target_pb2",
        __doc__="""App Engine HTTP request.
  
  The message defines the HTTP request that is sent to an App Engine app
  when the task is dispatched.
  
  Using [AppEngineHttpRequest][google.cloud.tasks.v2.AppEngineHttpRequest]
  requires
  ```appengine.applications.get`` <https://cloud.google.com/appengine/docs/admin-api/access-control>`_
  Google IAM permission for the project and the following scope:
  
  ``https://www.googleapis.com/auth/cloud-platform``
  
  The task will be delivered to the App Engine app which belongs to the
  same project as the queue. For more information, see `How Requests are
  Routed <https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed>`_
  and how routing is affected by `dispatch
  files <https://cloud.google.com/appengine/docs/python/config/dispatchref>`_.
  Traffic is encrypted during transport and never leaves Google
  datacenters. Because this traffic is carried over a communication
  mechanism internal to Google, you cannot explicitly set the protocol
  (for example, HTTP or HTTPS). The request to the handler, however, will
  appear to have used the HTTP protocol.
  
  The [AppEngineRouting][google.cloud.tasks.v2.AppEngineRouting] used to
  construct the URL that the task is delivered to can be set at the
  queue-level or task-level:
  
  -  If set,
     [app\_engine\_routing\_override][google.cloud.tasks.v2.AppEngineHttpQueue.app\_engine\_routing\_override]
     is used for all tasks in the queue, no matter what the setting is for
     the [task-level
     app\_engine\_routing][google.cloud.tasks.v2.AppEngineHttpRequest.app\_engine\_routing].
  
  The ``url`` that the task will be sent to is:
  
  -  ``url =`` [host][google.cloud.tasks.v2.AppEngineRouting.host] ``+``
     [relative\_uri][google.cloud.tasks.v2.AppEngineHttpRequest.relative\_uri]
  
  Tasks can be dispatched to secure app handlers, unsecure app handlers,
  and URIs restricted with
  ```login: admin`` <https://cloud.google.com/appengine/docs/standard/python/config/appref>`_.
  Because tasks are not run as any user, they cannot be dispatched to URIs
  restricted with
  ```login: required`` <https://cloud.google.com/appengine/docs/standard/python/config/appref>`_
  Task dispatches also do not follow redirects.
  
  The task attempt has succeeded if the app's request handler returns an
  HTTP response code in the range [``200`` - ``299``]. The task attempt
  has failed if the app's handler returns a non-2xx response code or Cloud
  Tasks does not receive response before the
  [deadline][google.cloud.tasks.v2.Task.dispatch\_deadline]. Failed tasks
  will be retried according to the [retry
  configuration][Queue.RetryConfig]. ``503`` (Service Unavailable) is
  considered an App Engine system error instead of an application error
  and will cause Cloud Tasks' traffic congestion control to temporarily
  throttle the queue's dispatches. Unlike other types of task targets, a
  ``429`` (Too Many Requests) response from an app handler does not cause
  traffic congestion control to throttle the queue.
  
  
  Attributes:
      http_method:
          The HTTP method to use for the request. The default is POST.
          The app's request handler for the task's target URL must be
          able to handle HTTP requests with this http\_method, otherwise
          the task attempt will fail with error code 405 (Method Not
          Allowed). See `Writing a push task request handler <https://cl
          oud.google.com/appengine/docs/java/taskqueue/push/creating-
          handlers#writing_a_push_task_request_handler>`_ and the
          documentation for the request handlers in the language your
          app is written in e.g. `Python Request Handler <https://cloud.
          google.com/appengine/docs/python/tools/webapp/requesthandlercl
          ass>`_.
      app_engine_routing:
          Task-level setting for App Engine routing.  If set, [app\_engi
          ne\_routing\_override][google.cloud.tasks.v2.AppEngineHttpQueu
          e.app\_engine\_routing\_override] is used for all tasks in the
          queue, no matter what the setting is for the [task-level app\_
          engine\_routing][google.cloud.tasks.v2.AppEngineHttpRequest.ap
          p\_engine\_routing].
      relative_uri:
          The relative URI.  The relative URI must begin with "/" and
          must be a valid HTTP relative URI. It can contain a path and
          query string arguments. If the relative URI is empty, then the
          root path "/" will be used. No spaces are allowed, and the
          maximum length allowed is 2083 characters.
      headers:
          HTTP request headers.  This map contains the header field
          names and values. Headers can be set when the [task is
          created][google.cloud.tasks.v2.CloudTasks.CreateTask].
          Repeated headers are not supported but a header value can
          contain commas.  Cloud Tasks sets some headers to default
          values:  -  ``User-Agent``: By default, this header is
          ``"AppEngine-Google; (+http://code.google.com/appengine)"``.
          This    header can be modified, but Cloud Tasks will append
          ``"AppEngine-Google; (+http://code.google.com/appengine)"`` to
          the    modified ``User-Agent``.  If the task has a
          [body][google.cloud.tasks.v2.AppEngineHttpRequest.body], Cloud
          Tasks sets the following headers:  -  ``Content-Type``: By
          default, the ``Content-Type`` header is set to
          ``"application/octet-stream"``. The default can be overridden
          by    explicitly setting ``Content-Type`` to a particular
          media type when    the [task is
          created][google.cloud.tasks.v2.CloudTasks.CreateTask].    For
          example, ``Content-Type`` can be set to
          ``"application/json"``. -  ``Content-Length``: This is
          computed by Cloud Tasks. This value is    output only. It
          cannot be changed.  The headers below cannot be set or
          overridden:  -  ``Host`` -  ``X-Google-*`` -
          ``X-AppEngine-*``  In addition, Cloud Tasks sets some headers
          when the task is dispatched, such as headers containing
          information about the task; see `request headers <https://clou
          d.google.com/appengine/docs/python/taskqueue/push/creating-
          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.  Although
          there is no specific limit for the maximum number of headers
          or the size, there is a limit on the maximum size of the
          [Task][google.cloud.tasks.v2.Task]. For more information, see
          the [CreateTask][google.cloud.tasks.v2.CloudTasks.CreateTask]
          documentation.
      body:
          HTTP request body.  A request body is allowed only if the HTTP
          method is POST or PUT. It is an error to set a body on a task
          with an incompatible
          [HttpMethod][google.cloud.tasks.v2.HttpMethod].
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.tasks.v2.AppEngineHttpRequest)
    ),
)
_sym_db.RegisterMessage(AppEngineHttpRequest)
_sym_db.RegisterMessage(AppEngineHttpRequest.HeadersEntry)

AppEngineRouting = _reflection.GeneratedProtocolMessageType(
    "AppEngineRouting",
    (_message.Message,),
    dict(
        DESCRIPTOR=_APPENGINEROUTING,
        __module__="google.cloud.tasks_v2.proto.target_pb2",
        __doc__="""App Engine Routing.
  
  Defines routing characteristics specific to App Engine - service,
  version, and instance.
  
  For more information about services, versions, and instances see `An
  Overview of App
  Engine <https://cloud.google.com/appengine/docs/python/an-overview-of-app-engine>`_,
  `Microservices Architecture on Google App
  Engine <https://cloud.google.com/appengine/docs/python/microservices-on-app-engine>`_,
  `App Engine Standard request
  routing <https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed>`_,
  and `App Engine Flex request
  routing <https://cloud.google.com/appengine/docs/flexible/python/how-requests-are-routed>`_.
  
  
  Attributes:
      service:
          App service.  By default, the task is sent to the service
          which is the default service when the task is attempted.  For
          some queues or tasks which were created using the App Engine
          Task Queue API,
          [host][google.cloud.tasks.v2.AppEngineRouting.host] is not
          parsable into
          [service][google.cloud.tasks.v2.AppEngineRouting.service],
          [version][google.cloud.tasks.v2.AppEngineRouting.version], and
          [instance][google.cloud.tasks.v2.AppEngineRouting.instance].
          For example, some tasks which were created using the App
          Engine SDK use a custom domain name; custom domains are not
          parsed by Cloud Tasks. If
          [host][google.cloud.tasks.v2.AppEngineRouting.host] is not
          parsable, then
          [service][google.cloud.tasks.v2.AppEngineRouting.service],
          [version][google.cloud.tasks.v2.AppEngineRouting.version], and
          [instance][google.cloud.tasks.v2.AppEngineRouting.instance]
          are the empty string.
      version:
          App version.  By default, the task is sent to the version
          which is the default version when the task is attempted.  For
          some queues or tasks which were created using the App Engine
          Task Queue API,
          [host][google.cloud.tasks.v2.AppEngineRouting.host] is not
          parsable into
          [service][google.cloud.tasks.v2.AppEngineRouting.service],
          [version][google.cloud.tasks.v2.AppEngineRouting.version], and
          [instance][google.cloud.tasks.v2.AppEngineRouting.instance].
          For example, some tasks which were created using the App
          Engine SDK use a custom domain name; custom domains are not
          parsed by Cloud Tasks. If
          [host][google.cloud.tasks.v2.AppEngineRouting.host] is not
          parsable, then
          [service][google.cloud.tasks.v2.AppEngineRouting.service],
          [version][google.cloud.tasks.v2.AppEngineRouting.version], and
          [instance][google.cloud.tasks.v2.AppEngineRouting.instance]
          are the empty string.
      instance:
          App instance.  By default, the task is sent to an instance
          which is available when the task is attempted.  Requests can
          only be sent to a specific instance if `manual scaling is used
          in App Engine Standard
          <https://cloud.google.com/appengine/docs/python/an-overview-
          of-app-engine?hl=en_US#scaling_types_and_instance_classes>`_.
          App Engine Flex does not support instances. For more
          information, see `App Engine Standard request routing
          <https://cloud.google.com/appengine/docs/standard/python/how-
          requests-are-routed>`_ and `App Engine Flex request routing
          <https://cloud.google.com/appengine/docs/flexible/python/how-
          requests-are-routed>`_.
      host:
          Output only. The host that the task is sent to.  The host is
          constructed from the domain name of the app associated with
          the queue's project ID (for example .appspot.com), and the
          [service][google.cloud.tasks.v2.AppEngineRouting.service],
          [version][google.cloud.tasks.v2.AppEngineRouting.version], and
          [instance][google.cloud.tasks.v2.AppEngineRouting.instance].
          Tasks which were created using the App Engine SDK might have a
          custom domain name.  For more information, see `How Requests
          are Routed
          <https://cloud.google.com/appengine/docs/standard/python/how-
          requests-are-routed>`_.
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.tasks.v2.AppEngineRouting)
    ),
)
_sym_db.RegisterMessage(AppEngineRouting)


DESCRIPTOR._options = None
_APPENGINEHTTPREQUEST_HEADERSENTRY._options = None
# @@protoc_insertion_point(module_scope)