# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: yandex/cloud/apploadbalancer/v1/virtual_host.proto
"""Generated protocol buffer code."""
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.protobuf import duration_pb2 as google_dot_protobuf_dot_duration__pb2
from yandex.cloud.apploadbalancer.v1 import payload_pb2 as yandex_dot_cloud_dot_apploadbalancer_dot_v1_dot_payload__pb2
from yandex.cloud import validation_pb2 as yandex_dot_cloud_dot_validation__pb2


DESCRIPTOR = _descriptor.FileDescriptor(
  name='yandex/cloud/apploadbalancer/v1/virtual_host.proto',
  package='yandex.cloud.apploadbalancer.v1',
  syntax='proto3',
  serialized_options=b'\n#yandex.cloud.api.apploadbalancer.v1ZSgithub.com/yandex-cloud/go-genproto/yandex/cloud/apploadbalancer/v1;apploadbalancer',
  create_key=_descriptor._internal_create_key,
  serialized_pb=b'\n2yandex/cloud/apploadbalancer/v1/virtual_host.proto\x12\x1fyandex.cloud.apploadbalancer.v1\x1a\x1egoogle/protobuf/duration.proto\x1a-yandex/cloud/apploadbalancer/v1/payload.proto\x1a\x1dyandex/cloud/validation.proto\"\xdd\x02\n\x0bVirtualHost\x12\x12\n\x04name\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\x12\x11\n\tauthority\x18\x02 \x03(\t\x12\x36\n\x06routes\x18\x03 \x03(\x0b\x32&.yandex.cloud.apploadbalancer.v1.Route\x12S\n\x16modify_request_headers\x18\x04 \x03(\x0b\x32\x33.yandex.cloud.apploadbalancer.v1.HeaderModification\x12T\n\x17modify_response_headers\x18\x05 \x03(\x0b\x32\x33.yandex.cloud.apploadbalancer.v1.HeaderModification\x12\x44\n\rroute_options\x18\x06 \x01(\x0b\x32-.yandex.cloud.apploadbalancer.v1.RouteOptions\"\xee\x01\n\x0cRouteOptions\x12S\n\x16modify_request_headers\x18\x01 \x03(\x0b\x32\x33.yandex.cloud.apploadbalancer.v1.HeaderModification\x12T\n\x17modify_response_headers\x18\x02 \x03(\x0b\x32\x33.yandex.cloud.apploadbalancer.v1.HeaderModification\x12\x33\n\x04rbac\x18\x03 \x01(\x0b\x32%.yandex.cloud.apploadbalancer.v1.RBAC\"\xcb\x01\n\x04RBAC\x12\x42\n\x06\x61\x63tion\x18\x01 \x01(\x0e\x32,.yandex.cloud.apploadbalancer.v1.RBAC.ActionB\x04\xe8\xc7\x31\x01\x12H\n\nprincipals\x18\x02 \x03(\x0b\x32+.yandex.cloud.apploadbalancer.v1.PrincipalsB\x07\x82\xc8\x31\x03>=1\"5\n\x06\x41\x63tion\x12\x16\n\x12\x41\x43TION_UNSPECIFIED\x10\x00\x12\t\n\x05\x41LLOW\x10\x01\x12\x08\n\x04\x44\x45NY\x10\x02\"Y\n\nPrincipals\x12K\n\x0e\x61nd_principals\x18\x01 \x03(\x0b\x32*.yandex.cloud.apploadbalancer.v1.PrincipalB\x07\x82\xc8\x31\x03>=1\"\xf1\x01\n\tPrincipal\x12J\n\x06header\x18\x01 \x01(\x0b\x32\x38.yandex.cloud.apploadbalancer.v1.Principal.HeaderMatcherH\x00\x12\x13\n\tremote_ip\x18\x02 \x01(\tH\x00\x12\r\n\x03\x61ny\x18\x03 \x01(\x08H\x00\x1a`\n\rHeaderMatcher\x12\x12\n\x04name\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\x12;\n\x05value\x18\x02 \x01(\x0b\x32,.yandex.cloud.apploadbalancer.v1.StringMatchB\x12\n\nidentifier\x12\x04\xc0\xc1\x31\x01\"x\n\x12HeaderModification\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x10\n\x06\x61ppend\x18\x02 \x01(\tH\x00\x12\x11\n\x07replace\x18\x03 \x01(\tH\x00\x12\x10\n\x06remove\x18\x04 \x01(\x08H\x00\x12\x10\n\x06rename\x18\x05 \x01(\tH\x00\x42\x0b\n\toperation\"\xe8\x01\n\x05Route\x12\x12\n\x04name\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\x12:\n\x04http\x18\x02 \x01(\x0b\x32*.yandex.cloud.apploadbalancer.v1.HttpRouteH\x00\x12:\n\x04grpc\x18\x03 \x01(\x0b\x32*.yandex.cloud.apploadbalancer.v1.GrpcRouteH\x00\x12\x44\n\rroute_options\x18\x04 \x01(\x0b\x32-.yandex.cloud.apploadbalancer.v1.RouteOptionsB\r\n\x05route\x12\x04\xc0\xc1\x31\x01\"\xb5\x02\n\tHttpRoute\x12>\n\x05match\x18\x01 \x01(\x0b\x32/.yandex.cloud.apploadbalancer.v1.HttpRouteMatch\x12\x41\n\x05route\x18\x02 \x01(\x0b\x32\x30.yandex.cloud.apploadbalancer.v1.HttpRouteActionH\x00\x12\x43\n\x08redirect\x18\x03 \x01(\x0b\x32/.yandex.cloud.apploadbalancer.v1.RedirectActionH\x00\x12P\n\x0f\x64irect_response\x18\x04 \x01(\x0b\x32\x35.yandex.cloud.apploadbalancer.v1.DirectResponseActionH\x00\x42\x0e\n\x06\x61\x63tion\x12\x04\xc0\xc1\x31\x01\"\xf4\x01\n\tGrpcRoute\x12>\n\x05match\x18\x01 \x01(\x0b\x32/.yandex.cloud.apploadbalancer.v1.GrpcRouteMatch\x12\x41\n\x05route\x18\x02 \x01(\x0b\x32\x30.yandex.cloud.apploadbalancer.v1.GrpcRouteActionH\x00\x12T\n\x0fstatus_response\x18\x03 \x01(\x0b\x32\x39.yandex.cloud.apploadbalancer.v1.GrpcStatusResponseActionH\x00\x42\x0e\n\x06\x61\x63tion\x12\x04\xc0\xc1\x31\x01\"a\n\x0eHttpRouteMatch\x12\x13\n\x0bhttp_method\x18\x01 \x03(\t\x12:\n\x04path\x18\x02 \x01(\x0b\x32,.yandex.cloud.apploadbalancer.v1.StringMatch\"L\n\x0eGrpcRouteMatch\x12:\n\x04\x66qmn\x18\x01 \x01(\x0b\x32,.yandex.cloud.apploadbalancer.v1.StringMatch\"b\n\x0bStringMatch\x12\x15\n\x0b\x65xact_match\x18\x01 \x01(\tH\x00\x12\x16\n\x0cprefix_match\x18\x02 \x01(\tH\x00\x12\x15\n\x0bregex_match\x18\x03 \x01(\tH\x00\x42\r\n\x05match\x12\x04\xc0\xc1\x31\x01\"\xfa\x02\n\x0eRedirectAction\x12\x16\n\x0ereplace_scheme\x18\x01 \x01(\t\x12\x14\n\x0creplace_host\x18\x02 \x01(\t\x12\x14\n\x0creplace_port\x18\x03 \x01(\x03\x12\x16\n\x0creplace_path\x18\x04 \x01(\tH\x00\x12\x18\n\x0ereplace_prefix\x18\x05 \x01(\tH\x00\x12\x14\n\x0cremove_query\x18\x06 \x01(\x08\x12[\n\rresponse_code\x18\x07 \x01(\x0e\x32\x44.yandex.cloud.apploadbalancer.v1.RedirectAction.RedirectResponseCode\"w\n\x14RedirectResponseCode\x12\x15\n\x11MOVED_PERMANENTLY\x10\x00\x12\t\n\x05\x46OUND\x10\x01\x12\r\n\tSEE_OTHER\x10\x02\x12\x16\n\x12TEMPORARY_REDIRECT\x10\x03\x12\x16\n\x12PERMANENT_REDIRECT\x10\x04\x42\x06\n\x04path\"k\n\x14\x44irectResponseAction\x12\x1b\n\x06status\x18\x01 \x01(\x03\x42\x0b\xfa\xc7\x31\x07\x31\x30\x30-599\x12\x36\n\x04\x62ody\x18\x02 \x01(\x0b\x32(.yandex.cloud.apploadbalancer.v1.Payload\"\x82\x02\n\x18GrpcStatusResponseAction\x12P\n\x06status\x18\x01 \x01(\x0e\x32@.yandex.cloud.apploadbalancer.v1.GrpcStatusResponseAction.Status\"\x93\x01\n\x06Status\x12\x06\n\x02OK\x10\x00\x12\x14\n\x10INVALID_ARGUMENT\x10\x01\x12\r\n\tNOT_FOUND\x10\x02\x12\x15\n\x11PERMISSION_DENIED\x10\x03\x12\x13\n\x0fUNAUTHENTICATED\x10\x04\x12\x11\n\rUNIMPLEMENTED\x10\x05\x12\x0c\n\x08INTERNAL\x10\x06\x12\x0f\n\x0bUNAVAILABLE\x10\x07\"\x8c\x02\n\x0fHttpRouteAction\x12\x1e\n\x10\x62\x61\x63kend_group_id\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\x12*\n\x07timeout\x18\x02 \x01(\x0b\x32\x19.google.protobuf.Duration\x12/\n\x0cidle_timeout\x18\x03 \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x16\n\x0chost_rewrite\x18\x04 \x01(\tH\x00\x12\x1b\n\x11\x61uto_host_rewrite\x18\x05 \x01(\x08H\x00\x12\x16\n\x0eprefix_rewrite\x18\x06 \x01(\t\x12\x15\n\rupgrade_types\x18\x07 \x03(\tB\x18\n\x16host_rewrite_specifier\"\xe1\x01\n\x0fGrpcRouteAction\x12\x1e\n\x10\x62\x61\x63kend_group_id\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\x12.\n\x0bmax_timeout\x18\x02 \x01(\x0b\x32\x19.google.protobuf.Duration\x12/\n\x0cidle_timeout\x18\x03 \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x16\n\x0chost_rewrite\x18\x04 \x01(\tH\x00\x12\x1b\n\x11\x61uto_host_rewrite\x18\x05 \x01(\x08H\x00\x42\x18\n\x16host_rewrite_specifierBz\n#yandex.cloud.api.apploadbalancer.v1ZSgithub.com/yandex-cloud/go-genproto/yandex/cloud/apploadbalancer/v1;apploadbalancerb\x06proto3'
  ,
  dependencies=[google_dot_protobuf_dot_duration__pb2.DESCRIPTOR,yandex_dot_cloud_dot_apploadbalancer_dot_v1_dot_payload__pb2.DESCRIPTOR,yandex_dot_cloud_dot_validation__pb2.DESCRIPTOR,])



_RBAC_ACTION = _descriptor.EnumDescriptor(
  name='Action',
  full_name='yandex.cloud.apploadbalancer.v1.RBAC.Action',
  filename=None,
  file=DESCRIPTOR,
  create_key=_descriptor._internal_create_key,
  values=[
    _descriptor.EnumValueDescriptor(
      name='ACTION_UNSPECIFIED', index=0, number=0,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='ALLOW', index=1, number=1,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='DENY', index=2, number=2,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
  ],
  containing_type=None,
  serialized_options=None,
  serialized_start=941,
  serialized_end=994,
)
_sym_db.RegisterEnumDescriptor(_RBAC_ACTION)

_REDIRECTACTION_REDIRECTRESPONSECODE = _descriptor.EnumDescriptor(
  name='RedirectResponseCode',
  full_name='yandex.cloud.apploadbalancer.v1.RedirectAction.RedirectResponseCode',
  filename=None,
  file=DESCRIPTOR,
  create_key=_descriptor._internal_create_key,
  values=[
    _descriptor.EnumValueDescriptor(
      name='MOVED_PERMANENTLY', index=0, number=0,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='FOUND', index=1, number=1,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='SEE_OTHER', index=2, number=2,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='TEMPORARY_REDIRECT', index=3, number=3,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='PERMANENT_REDIRECT', index=4, number=4,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
  ],
  containing_type=None,
  serialized_options=None,
  serialized_start=2776,
  serialized_end=2895,
)
_sym_db.RegisterEnumDescriptor(_REDIRECTACTION_REDIRECTRESPONSECODE)

_GRPCSTATUSRESPONSEACTION_STATUS = _descriptor.EnumDescriptor(
  name='Status',
  full_name='yandex.cloud.apploadbalancer.v1.GrpcStatusResponseAction.Status',
  filename=None,
  file=DESCRIPTOR,
  create_key=_descriptor._internal_create_key,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OK', index=0, number=0,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='INVALID_ARGUMENT', index=1, number=1,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='NOT_FOUND', index=2, number=2,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='PERMISSION_DENIED', index=3, number=3,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='UNAUTHENTICATED', index=4, number=4,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='UNIMPLEMENTED', index=5, number=5,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='INTERNAL', index=6, number=6,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='UNAVAILABLE', index=7, number=7,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
  ],
  containing_type=None,
  serialized_options=None,
  serialized_start=3126,
  serialized_end=3273,
)
_sym_db.RegisterEnumDescriptor(_GRPCSTATUSRESPONSEACTION_STATUS)


_VIRTUALHOST = _descriptor.Descriptor(
  name='VirtualHost',
  full_name='yandex.cloud.apploadbalancer.v1.VirtualHost',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='name', full_name='yandex.cloud.apploadbalancer.v1.VirtualHost.name', 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=b'\350\3071\001', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='authority', full_name='yandex.cloud.apploadbalancer.v1.VirtualHost.authority', index=1,
      number=2, type=9, cpp_type=9, 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='routes', full_name='yandex.cloud.apploadbalancer.v1.VirtualHost.routes', index=2,
      number=3, 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='modify_request_headers', full_name='yandex.cloud.apploadbalancer.v1.VirtualHost.modify_request_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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='modify_response_headers', full_name='yandex.cloud.apploadbalancer.v1.VirtualHost.modify_response_headers', index=4,
      number=5, 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='route_options', full_name='yandex.cloud.apploadbalancer.v1.VirtualHost.route_options', index=5,
      number=6, 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,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=198,
  serialized_end=547,
)


_ROUTEOPTIONS = _descriptor.Descriptor(
  name='RouteOptions',
  full_name='yandex.cloud.apploadbalancer.v1.RouteOptions',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='modify_request_headers', full_name='yandex.cloud.apploadbalancer.v1.RouteOptions.modify_request_headers', index=0,
      number=1, 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='modify_response_headers', full_name='yandex.cloud.apploadbalancer.v1.RouteOptions.modify_response_headers', index=1,
      number=2, 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='rbac', full_name='yandex.cloud.apploadbalancer.v1.RouteOptions.rbac', index=2,
      number=3, 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,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=550,
  serialized_end=788,
)


_RBAC = _descriptor.Descriptor(
  name='RBAC',
  full_name='yandex.cloud.apploadbalancer.v1.RBAC',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='action', full_name='yandex.cloud.apploadbalancer.v1.RBAC.action', 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=b'\350\3071\001', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='principals', full_name='yandex.cloud.apploadbalancer.v1.RBAC.principals', index=1,
      number=2, 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=b'\202\3101\003>=1', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
    _RBAC_ACTION,
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=791,
  serialized_end=994,
)


_PRINCIPALS = _descriptor.Descriptor(
  name='Principals',
  full_name='yandex.cloud.apploadbalancer.v1.Principals',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='and_principals', full_name='yandex.cloud.apploadbalancer.v1.Principals.and_principals', index=0,
      number=1, 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=b'\202\3101\003>=1', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=996,
  serialized_end=1085,
)


_PRINCIPAL_HEADERMATCHER = _descriptor.Descriptor(
  name='HeaderMatcher',
  full_name='yandex.cloud.apploadbalancer.v1.Principal.HeaderMatcher',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='name', full_name='yandex.cloud.apploadbalancer.v1.Principal.HeaderMatcher.name', 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=b'\350\3071\001', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='value', full_name='yandex.cloud.apploadbalancer.v1.Principal.HeaderMatcher.value', 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,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1213,
  serialized_end=1309,
)

_PRINCIPAL = _descriptor.Descriptor(
  name='Principal',
  full_name='yandex.cloud.apploadbalancer.v1.Principal',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='header', full_name='yandex.cloud.apploadbalancer.v1.Principal.header', index=0,
      number=1, 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='remote_ip', full_name='yandex.cloud.apploadbalancer.v1.Principal.remote_ip', 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='any', full_name='yandex.cloud.apploadbalancer.v1.Principal.any', index=2,
      number=3, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[_PRINCIPAL_HEADERMATCHER, ],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='identifier', full_name='yandex.cloud.apploadbalancer.v1.Principal.identifier',
      index=0, containing_type=None,
      create_key=_descriptor._internal_create_key,
    fields=[], serialized_options=b'\300\3011\001'),
  ],
  serialized_start=1088,
  serialized_end=1329,
)


_HEADERMODIFICATION = _descriptor.Descriptor(
  name='HeaderModification',
  full_name='yandex.cloud.apploadbalancer.v1.HeaderModification',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='name', full_name='yandex.cloud.apploadbalancer.v1.HeaderModification.name', 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='append', full_name='yandex.cloud.apploadbalancer.v1.HeaderModification.append', 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='replace', full_name='yandex.cloud.apploadbalancer.v1.HeaderModification.replace', 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='remove', full_name='yandex.cloud.apploadbalancer.v1.HeaderModification.remove', index=3,
      number=4, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='rename', full_name='yandex.cloud.apploadbalancer.v1.HeaderModification.rename', index=4,
      number=5, 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,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='operation', full_name='yandex.cloud.apploadbalancer.v1.HeaderModification.operation',
      index=0, containing_type=None,
      create_key=_descriptor._internal_create_key,
    fields=[]),
  ],
  serialized_start=1331,
  serialized_end=1451,
)


_ROUTE = _descriptor.Descriptor(
  name='Route',
  full_name='yandex.cloud.apploadbalancer.v1.Route',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='name', full_name='yandex.cloud.apploadbalancer.v1.Route.name', 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=b'\350\3071\001', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='http', full_name='yandex.cloud.apploadbalancer.v1.Route.http', 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='grpc', full_name='yandex.cloud.apploadbalancer.v1.Route.grpc', index=2,
      number=3, 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='route_options', full_name='yandex.cloud.apploadbalancer.v1.Route.route_options', index=3,
      number=4, 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,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='route', full_name='yandex.cloud.apploadbalancer.v1.Route.route',
      index=0, containing_type=None,
      create_key=_descriptor._internal_create_key,
    fields=[], serialized_options=b'\300\3011\001'),
  ],
  serialized_start=1454,
  serialized_end=1686,
)


_HTTPROUTE = _descriptor.Descriptor(
  name='HttpRoute',
  full_name='yandex.cloud.apploadbalancer.v1.HttpRoute',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='match', full_name='yandex.cloud.apploadbalancer.v1.HttpRoute.match', index=0,
      number=1, 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='route', full_name='yandex.cloud.apploadbalancer.v1.HttpRoute.route', 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='redirect', full_name='yandex.cloud.apploadbalancer.v1.HttpRoute.redirect', index=2,
      number=3, 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='direct_response', full_name='yandex.cloud.apploadbalancer.v1.HttpRoute.direct_response', index=3,
      number=4, 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,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='action', full_name='yandex.cloud.apploadbalancer.v1.HttpRoute.action',
      index=0, containing_type=None,
      create_key=_descriptor._internal_create_key,
    fields=[], serialized_options=b'\300\3011\001'),
  ],
  serialized_start=1689,
  serialized_end=1998,
)


_GRPCROUTE = _descriptor.Descriptor(
  name='GrpcRoute',
  full_name='yandex.cloud.apploadbalancer.v1.GrpcRoute',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='match', full_name='yandex.cloud.apploadbalancer.v1.GrpcRoute.match', index=0,
      number=1, 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='route', full_name='yandex.cloud.apploadbalancer.v1.GrpcRoute.route', 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='status_response', full_name='yandex.cloud.apploadbalancer.v1.GrpcRoute.status_response', index=2,
      number=3, 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,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='action', full_name='yandex.cloud.apploadbalancer.v1.GrpcRoute.action',
      index=0, containing_type=None,
      create_key=_descriptor._internal_create_key,
    fields=[], serialized_options=b'\300\3011\001'),
  ],
  serialized_start=2001,
  serialized_end=2245,
)


_HTTPROUTEMATCH = _descriptor.Descriptor(
  name='HttpRouteMatch',
  full_name='yandex.cloud.apploadbalancer.v1.HttpRouteMatch',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='http_method', full_name='yandex.cloud.apploadbalancer.v1.HttpRouteMatch.http_method', index=0,
      number=1, type=9, cpp_type=9, 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='path', full_name='yandex.cloud.apploadbalancer.v1.HttpRouteMatch.path', 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,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2247,
  serialized_end=2344,
)


_GRPCROUTEMATCH = _descriptor.Descriptor(
  name='GrpcRouteMatch',
  full_name='yandex.cloud.apploadbalancer.v1.GrpcRouteMatch',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='fqmn', full_name='yandex.cloud.apploadbalancer.v1.GrpcRouteMatch.fqmn', index=0,
      number=1, 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,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2346,
  serialized_end=2422,
)


_STRINGMATCH = _descriptor.Descriptor(
  name='StringMatch',
  full_name='yandex.cloud.apploadbalancer.v1.StringMatch',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='exact_match', full_name='yandex.cloud.apploadbalancer.v1.StringMatch.exact_match', 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='prefix_match', full_name='yandex.cloud.apploadbalancer.v1.StringMatch.prefix_match', 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='regex_match', full_name='yandex.cloud.apploadbalancer.v1.StringMatch.regex_match', 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,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='match', full_name='yandex.cloud.apploadbalancer.v1.StringMatch.match',
      index=0, containing_type=None,
      create_key=_descriptor._internal_create_key,
    fields=[], serialized_options=b'\300\3011\001'),
  ],
  serialized_start=2424,
  serialized_end=2522,
)


_REDIRECTACTION = _descriptor.Descriptor(
  name='RedirectAction',
  full_name='yandex.cloud.apploadbalancer.v1.RedirectAction',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='replace_scheme', full_name='yandex.cloud.apploadbalancer.v1.RedirectAction.replace_scheme', 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='replace_host', full_name='yandex.cloud.apploadbalancer.v1.RedirectAction.replace_host', 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='replace_port', full_name='yandex.cloud.apploadbalancer.v1.RedirectAction.replace_port', index=2,
      number=3, type=3, cpp_type=2, 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='replace_path', full_name='yandex.cloud.apploadbalancer.v1.RedirectAction.replace_path', 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='replace_prefix', full_name='yandex.cloud.apploadbalancer.v1.RedirectAction.replace_prefix', index=4,
      number=5, 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='remove_query', full_name='yandex.cloud.apploadbalancer.v1.RedirectAction.remove_query', index=5,
      number=6, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='response_code', full_name='yandex.cloud.apploadbalancer.v1.RedirectAction.response_code', index=6,
      number=7, 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,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
    _REDIRECTACTION_REDIRECTRESPONSECODE,
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='path', full_name='yandex.cloud.apploadbalancer.v1.RedirectAction.path',
      index=0, containing_type=None,
      create_key=_descriptor._internal_create_key,
    fields=[]),
  ],
  serialized_start=2525,
  serialized_end=2903,
)


_DIRECTRESPONSEACTION = _descriptor.Descriptor(
  name='DirectResponseAction',
  full_name='yandex.cloud.apploadbalancer.v1.DirectResponseAction',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='status', full_name='yandex.cloud.apploadbalancer.v1.DirectResponseAction.status', index=0,
      number=1, type=3, cpp_type=2, 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=b'\372\3071\007100-599', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='body', full_name='yandex.cloud.apploadbalancer.v1.DirectResponseAction.body', 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,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2905,
  serialized_end=3012,
)


_GRPCSTATUSRESPONSEACTION = _descriptor.Descriptor(
  name='GrpcStatusResponseAction',
  full_name='yandex.cloud.apploadbalancer.v1.GrpcStatusResponseAction',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='status', full_name='yandex.cloud.apploadbalancer.v1.GrpcStatusResponseAction.status', 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,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
    _GRPCSTATUSRESPONSEACTION_STATUS,
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3015,
  serialized_end=3273,
)


_HTTPROUTEACTION = _descriptor.Descriptor(
  name='HttpRouteAction',
  full_name='yandex.cloud.apploadbalancer.v1.HttpRouteAction',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='backend_group_id', full_name='yandex.cloud.apploadbalancer.v1.HttpRouteAction.backend_group_id', 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=b'\350\3071\001', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='timeout', full_name='yandex.cloud.apploadbalancer.v1.HttpRouteAction.timeout', 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='idle_timeout', full_name='yandex.cloud.apploadbalancer.v1.HttpRouteAction.idle_timeout', index=2,
      number=3, 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='host_rewrite', full_name='yandex.cloud.apploadbalancer.v1.HttpRouteAction.host_rewrite', 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='auto_host_rewrite', full_name='yandex.cloud.apploadbalancer.v1.HttpRouteAction.auto_host_rewrite', index=4,
      number=5, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='prefix_rewrite', full_name='yandex.cloud.apploadbalancer.v1.HttpRouteAction.prefix_rewrite', index=5,
      number=6, 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='upgrade_types', full_name='yandex.cloud.apploadbalancer.v1.HttpRouteAction.upgrade_types', index=6,
      number=7, type=9, cpp_type=9, 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,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='host_rewrite_specifier', full_name='yandex.cloud.apploadbalancer.v1.HttpRouteAction.host_rewrite_specifier',
      index=0, containing_type=None,
      create_key=_descriptor._internal_create_key,
    fields=[]),
  ],
  serialized_start=3276,
  serialized_end=3544,
)


_GRPCROUTEACTION = _descriptor.Descriptor(
  name='GrpcRouteAction',
  full_name='yandex.cloud.apploadbalancer.v1.GrpcRouteAction',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='backend_group_id', full_name='yandex.cloud.apploadbalancer.v1.GrpcRouteAction.backend_group_id', 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=b'\350\3071\001', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='max_timeout', full_name='yandex.cloud.apploadbalancer.v1.GrpcRouteAction.max_timeout', 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='idle_timeout', full_name='yandex.cloud.apploadbalancer.v1.GrpcRouteAction.idle_timeout', index=2,
      number=3, 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='host_rewrite', full_name='yandex.cloud.apploadbalancer.v1.GrpcRouteAction.host_rewrite', 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='auto_host_rewrite', full_name='yandex.cloud.apploadbalancer.v1.GrpcRouteAction.auto_host_rewrite', index=4,
      number=5, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='host_rewrite_specifier', full_name='yandex.cloud.apploadbalancer.v1.GrpcRouteAction.host_rewrite_specifier',
      index=0, containing_type=None,
      create_key=_descriptor._internal_create_key,
    fields=[]),
  ],
  serialized_start=3547,
  serialized_end=3772,
)

_VIRTUALHOST.fields_by_name['routes'].message_type = _ROUTE
_VIRTUALHOST.fields_by_name['modify_request_headers'].message_type = _HEADERMODIFICATION
_VIRTUALHOST.fields_by_name['modify_response_headers'].message_type = _HEADERMODIFICATION
_VIRTUALHOST.fields_by_name['route_options'].message_type = _ROUTEOPTIONS
_ROUTEOPTIONS.fields_by_name['modify_request_headers'].message_type = _HEADERMODIFICATION
_ROUTEOPTIONS.fields_by_name['modify_response_headers'].message_type = _HEADERMODIFICATION
_ROUTEOPTIONS.fields_by_name['rbac'].message_type = _RBAC
_RBAC.fields_by_name['action'].enum_type = _RBAC_ACTION
_RBAC.fields_by_name['principals'].message_type = _PRINCIPALS
_RBAC_ACTION.containing_type = _RBAC
_PRINCIPALS.fields_by_name['and_principals'].message_type = _PRINCIPAL
_PRINCIPAL_HEADERMATCHER.fields_by_name['value'].message_type = _STRINGMATCH
_PRINCIPAL_HEADERMATCHER.containing_type = _PRINCIPAL
_PRINCIPAL.fields_by_name['header'].message_type = _PRINCIPAL_HEADERMATCHER
_PRINCIPAL.oneofs_by_name['identifier'].fields.append(
  _PRINCIPAL.fields_by_name['header'])
_PRINCIPAL.fields_by_name['header'].containing_oneof = _PRINCIPAL.oneofs_by_name['identifier']
_PRINCIPAL.oneofs_by_name['identifier'].fields.append(
  _PRINCIPAL.fields_by_name['remote_ip'])
_PRINCIPAL.fields_by_name['remote_ip'].containing_oneof = _PRINCIPAL.oneofs_by_name['identifier']
_PRINCIPAL.oneofs_by_name['identifier'].fields.append(
  _PRINCIPAL.fields_by_name['any'])
_PRINCIPAL.fields_by_name['any'].containing_oneof = _PRINCIPAL.oneofs_by_name['identifier']
_HEADERMODIFICATION.oneofs_by_name['operation'].fields.append(
  _HEADERMODIFICATION.fields_by_name['append'])
_HEADERMODIFICATION.fields_by_name['append'].containing_oneof = _HEADERMODIFICATION.oneofs_by_name['operation']
_HEADERMODIFICATION.oneofs_by_name['operation'].fields.append(
  _HEADERMODIFICATION.fields_by_name['replace'])
_HEADERMODIFICATION.fields_by_name['replace'].containing_oneof = _HEADERMODIFICATION.oneofs_by_name['operation']
_HEADERMODIFICATION.oneofs_by_name['operation'].fields.append(
  _HEADERMODIFICATION.fields_by_name['remove'])
_HEADERMODIFICATION.fields_by_name['remove'].containing_oneof = _HEADERMODIFICATION.oneofs_by_name['operation']
_HEADERMODIFICATION.oneofs_by_name['operation'].fields.append(
  _HEADERMODIFICATION.fields_by_name['rename'])
_HEADERMODIFICATION.fields_by_name['rename'].containing_oneof = _HEADERMODIFICATION.oneofs_by_name['operation']
_ROUTE.fields_by_name['http'].message_type = _HTTPROUTE
_ROUTE.fields_by_name['grpc'].message_type = _GRPCROUTE
_ROUTE.fields_by_name['route_options'].message_type = _ROUTEOPTIONS
_ROUTE.oneofs_by_name['route'].fields.append(
  _ROUTE.fields_by_name['http'])
_ROUTE.fields_by_name['http'].containing_oneof = _ROUTE.oneofs_by_name['route']
_ROUTE.oneofs_by_name['route'].fields.append(
  _ROUTE.fields_by_name['grpc'])
_ROUTE.fields_by_name['grpc'].containing_oneof = _ROUTE.oneofs_by_name['route']
_HTTPROUTE.fields_by_name['match'].message_type = _HTTPROUTEMATCH
_HTTPROUTE.fields_by_name['route'].message_type = _HTTPROUTEACTION
_HTTPROUTE.fields_by_name['redirect'].message_type = _REDIRECTACTION
_HTTPROUTE.fields_by_name['direct_response'].message_type = _DIRECTRESPONSEACTION
_HTTPROUTE.oneofs_by_name['action'].fields.append(
  _HTTPROUTE.fields_by_name['route'])
_HTTPROUTE.fields_by_name['route'].containing_oneof = _HTTPROUTE.oneofs_by_name['action']
_HTTPROUTE.oneofs_by_name['action'].fields.append(
  _HTTPROUTE.fields_by_name['redirect'])
_HTTPROUTE.fields_by_name['redirect'].containing_oneof = _HTTPROUTE.oneofs_by_name['action']
_HTTPROUTE.oneofs_by_name['action'].fields.append(
  _HTTPROUTE.fields_by_name['direct_response'])
_HTTPROUTE.fields_by_name['direct_response'].containing_oneof = _HTTPROUTE.oneofs_by_name['action']
_GRPCROUTE.fields_by_name['match'].message_type = _GRPCROUTEMATCH
_GRPCROUTE.fields_by_name['route'].message_type = _GRPCROUTEACTION
_GRPCROUTE.fields_by_name['status_response'].message_type = _GRPCSTATUSRESPONSEACTION
_GRPCROUTE.oneofs_by_name['action'].fields.append(
  _GRPCROUTE.fields_by_name['route'])
_GRPCROUTE.fields_by_name['route'].containing_oneof = _GRPCROUTE.oneofs_by_name['action']
_GRPCROUTE.oneofs_by_name['action'].fields.append(
  _GRPCROUTE.fields_by_name['status_response'])
_GRPCROUTE.fields_by_name['status_response'].containing_oneof = _GRPCROUTE.oneofs_by_name['action']
_HTTPROUTEMATCH.fields_by_name['path'].message_type = _STRINGMATCH
_GRPCROUTEMATCH.fields_by_name['fqmn'].message_type = _STRINGMATCH
_STRINGMATCH.oneofs_by_name['match'].fields.append(
  _STRINGMATCH.fields_by_name['exact_match'])
_STRINGMATCH.fields_by_name['exact_match'].containing_oneof = _STRINGMATCH.oneofs_by_name['match']
_STRINGMATCH.oneofs_by_name['match'].fields.append(
  _STRINGMATCH.fields_by_name['prefix_match'])
_STRINGMATCH.fields_by_name['prefix_match'].containing_oneof = _STRINGMATCH.oneofs_by_name['match']
_STRINGMATCH.oneofs_by_name['match'].fields.append(
  _STRINGMATCH.fields_by_name['regex_match'])
_STRINGMATCH.fields_by_name['regex_match'].containing_oneof = _STRINGMATCH.oneofs_by_name['match']
_REDIRECTACTION.fields_by_name['response_code'].enum_type = _REDIRECTACTION_REDIRECTRESPONSECODE
_REDIRECTACTION_REDIRECTRESPONSECODE.containing_type = _REDIRECTACTION
_REDIRECTACTION.oneofs_by_name['path'].fields.append(
  _REDIRECTACTION.fields_by_name['replace_path'])
_REDIRECTACTION.fields_by_name['replace_path'].containing_oneof = _REDIRECTACTION.oneofs_by_name['path']
_REDIRECTACTION.oneofs_by_name['path'].fields.append(
  _REDIRECTACTION.fields_by_name['replace_prefix'])
_REDIRECTACTION.fields_by_name['replace_prefix'].containing_oneof = _REDIRECTACTION.oneofs_by_name['path']
_DIRECTRESPONSEACTION.fields_by_name['body'].message_type = yandex_dot_cloud_dot_apploadbalancer_dot_v1_dot_payload__pb2._PAYLOAD
_GRPCSTATUSRESPONSEACTION.fields_by_name['status'].enum_type = _GRPCSTATUSRESPONSEACTION_STATUS
_GRPCSTATUSRESPONSEACTION_STATUS.containing_type = _GRPCSTATUSRESPONSEACTION
_HTTPROUTEACTION.fields_by_name['timeout'].message_type = google_dot_protobuf_dot_duration__pb2._DURATION
_HTTPROUTEACTION.fields_by_name['idle_timeout'].message_type = google_dot_protobuf_dot_duration__pb2._DURATION
_HTTPROUTEACTION.oneofs_by_name['host_rewrite_specifier'].fields.append(
  _HTTPROUTEACTION.fields_by_name['host_rewrite'])
_HTTPROUTEACTION.fields_by_name['host_rewrite'].containing_oneof = _HTTPROUTEACTION.oneofs_by_name['host_rewrite_specifier']
_HTTPROUTEACTION.oneofs_by_name['host_rewrite_specifier'].fields.append(
  _HTTPROUTEACTION.fields_by_name['auto_host_rewrite'])
_HTTPROUTEACTION.fields_by_name['auto_host_rewrite'].containing_oneof = _HTTPROUTEACTION.oneofs_by_name['host_rewrite_specifier']
_GRPCROUTEACTION.fields_by_name['max_timeout'].message_type = google_dot_protobuf_dot_duration__pb2._DURATION
_GRPCROUTEACTION.fields_by_name['idle_timeout'].message_type = google_dot_protobuf_dot_duration__pb2._DURATION
_GRPCROUTEACTION.oneofs_by_name['host_rewrite_specifier'].fields.append(
  _GRPCROUTEACTION.fields_by_name['host_rewrite'])
_GRPCROUTEACTION.fields_by_name['host_rewrite'].containing_oneof = _GRPCROUTEACTION.oneofs_by_name['host_rewrite_specifier']
_GRPCROUTEACTION.oneofs_by_name['host_rewrite_specifier'].fields.append(
  _GRPCROUTEACTION.fields_by_name['auto_host_rewrite'])
_GRPCROUTEACTION.fields_by_name['auto_host_rewrite'].containing_oneof = _GRPCROUTEACTION.oneofs_by_name['host_rewrite_specifier']
DESCRIPTOR.message_types_by_name['VirtualHost'] = _VIRTUALHOST
DESCRIPTOR.message_types_by_name['RouteOptions'] = _ROUTEOPTIONS
DESCRIPTOR.message_types_by_name['RBAC'] = _RBAC
DESCRIPTOR.message_types_by_name['Principals'] = _PRINCIPALS
DESCRIPTOR.message_types_by_name['Principal'] = _PRINCIPAL
DESCRIPTOR.message_types_by_name['HeaderModification'] = _HEADERMODIFICATION
DESCRIPTOR.message_types_by_name['Route'] = _ROUTE
DESCRIPTOR.message_types_by_name['HttpRoute'] = _HTTPROUTE
DESCRIPTOR.message_types_by_name['GrpcRoute'] = _GRPCROUTE
DESCRIPTOR.message_types_by_name['HttpRouteMatch'] = _HTTPROUTEMATCH
DESCRIPTOR.message_types_by_name['GrpcRouteMatch'] = _GRPCROUTEMATCH
DESCRIPTOR.message_types_by_name['StringMatch'] = _STRINGMATCH
DESCRIPTOR.message_types_by_name['RedirectAction'] = _REDIRECTACTION
DESCRIPTOR.message_types_by_name['DirectResponseAction'] = _DIRECTRESPONSEACTION
DESCRIPTOR.message_types_by_name['GrpcStatusResponseAction'] = _GRPCSTATUSRESPONSEACTION
DESCRIPTOR.message_types_by_name['HttpRouteAction'] = _HTTPROUTEACTION
DESCRIPTOR.message_types_by_name['GrpcRouteAction'] = _GRPCROUTEACTION
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

VirtualHost = _reflection.GeneratedProtocolMessageType('VirtualHost', (_message.Message,), {
  'DESCRIPTOR' : _VIRTUALHOST,
  '__module__' : 'yandex.cloud.apploadbalancer.v1.virtual_host_pb2'
  # @@protoc_insertion_point(class_scope:yandex.cloud.apploadbalancer.v1.VirtualHost)
  })
_sym_db.RegisterMessage(VirtualHost)

RouteOptions = _reflection.GeneratedProtocolMessageType('RouteOptions', (_message.Message,), {
  'DESCRIPTOR' : _ROUTEOPTIONS,
  '__module__' : 'yandex.cloud.apploadbalancer.v1.virtual_host_pb2'
  # @@protoc_insertion_point(class_scope:yandex.cloud.apploadbalancer.v1.RouteOptions)
  })
_sym_db.RegisterMessage(RouteOptions)

RBAC = _reflection.GeneratedProtocolMessageType('RBAC', (_message.Message,), {
  'DESCRIPTOR' : _RBAC,
  '__module__' : 'yandex.cloud.apploadbalancer.v1.virtual_host_pb2'
  # @@protoc_insertion_point(class_scope:yandex.cloud.apploadbalancer.v1.RBAC)
  })
_sym_db.RegisterMessage(RBAC)

Principals = _reflection.GeneratedProtocolMessageType('Principals', (_message.Message,), {
  'DESCRIPTOR' : _PRINCIPALS,
  '__module__' : 'yandex.cloud.apploadbalancer.v1.virtual_host_pb2'
  # @@protoc_insertion_point(class_scope:yandex.cloud.apploadbalancer.v1.Principals)
  })
_sym_db.RegisterMessage(Principals)

Principal = _reflection.GeneratedProtocolMessageType('Principal', (_message.Message,), {

  'HeaderMatcher' : _reflection.GeneratedProtocolMessageType('HeaderMatcher', (_message.Message,), {
    'DESCRIPTOR' : _PRINCIPAL_HEADERMATCHER,
    '__module__' : 'yandex.cloud.apploadbalancer.v1.virtual_host_pb2'
    # @@protoc_insertion_point(class_scope:yandex.cloud.apploadbalancer.v1.Principal.HeaderMatcher)
    })
  ,
  'DESCRIPTOR' : _PRINCIPAL,
  '__module__' : 'yandex.cloud.apploadbalancer.v1.virtual_host_pb2'
  # @@protoc_insertion_point(class_scope:yandex.cloud.apploadbalancer.v1.Principal)
  })
_sym_db.RegisterMessage(Principal)
_sym_db.RegisterMessage(Principal.HeaderMatcher)

HeaderModification = _reflection.GeneratedProtocolMessageType('HeaderModification', (_message.Message,), {
  'DESCRIPTOR' : _HEADERMODIFICATION,
  '__module__' : 'yandex.cloud.apploadbalancer.v1.virtual_host_pb2'
  # @@protoc_insertion_point(class_scope:yandex.cloud.apploadbalancer.v1.HeaderModification)
  })
_sym_db.RegisterMessage(HeaderModification)

Route = _reflection.GeneratedProtocolMessageType('Route', (_message.Message,), {
  'DESCRIPTOR' : _ROUTE,
  '__module__' : 'yandex.cloud.apploadbalancer.v1.virtual_host_pb2'
  # @@protoc_insertion_point(class_scope:yandex.cloud.apploadbalancer.v1.Route)
  })
_sym_db.RegisterMessage(Route)

HttpRoute = _reflection.GeneratedProtocolMessageType('HttpRoute', (_message.Message,), {
  'DESCRIPTOR' : _HTTPROUTE,
  '__module__' : 'yandex.cloud.apploadbalancer.v1.virtual_host_pb2'
  # @@protoc_insertion_point(class_scope:yandex.cloud.apploadbalancer.v1.HttpRoute)
  })
_sym_db.RegisterMessage(HttpRoute)

GrpcRoute = _reflection.GeneratedProtocolMessageType('GrpcRoute', (_message.Message,), {
  'DESCRIPTOR' : _GRPCROUTE,
  '__module__' : 'yandex.cloud.apploadbalancer.v1.virtual_host_pb2'
  # @@protoc_insertion_point(class_scope:yandex.cloud.apploadbalancer.v1.GrpcRoute)
  })
_sym_db.RegisterMessage(GrpcRoute)

HttpRouteMatch = _reflection.GeneratedProtocolMessageType('HttpRouteMatch', (_message.Message,), {
  'DESCRIPTOR' : _HTTPROUTEMATCH,
  '__module__' : 'yandex.cloud.apploadbalancer.v1.virtual_host_pb2'
  # @@protoc_insertion_point(class_scope:yandex.cloud.apploadbalancer.v1.HttpRouteMatch)
  })
_sym_db.RegisterMessage(HttpRouteMatch)

GrpcRouteMatch = _reflection.GeneratedProtocolMessageType('GrpcRouteMatch', (_message.Message,), {
  'DESCRIPTOR' : _GRPCROUTEMATCH,
  '__module__' : 'yandex.cloud.apploadbalancer.v1.virtual_host_pb2'
  # @@protoc_insertion_point(class_scope:yandex.cloud.apploadbalancer.v1.GrpcRouteMatch)
  })
_sym_db.RegisterMessage(GrpcRouteMatch)

StringMatch = _reflection.GeneratedProtocolMessageType('StringMatch', (_message.Message,), {
  'DESCRIPTOR' : _STRINGMATCH,
  '__module__' : 'yandex.cloud.apploadbalancer.v1.virtual_host_pb2'
  # @@protoc_insertion_point(class_scope:yandex.cloud.apploadbalancer.v1.StringMatch)
  })
_sym_db.RegisterMessage(StringMatch)

RedirectAction = _reflection.GeneratedProtocolMessageType('RedirectAction', (_message.Message,), {
  'DESCRIPTOR' : _REDIRECTACTION,
  '__module__' : 'yandex.cloud.apploadbalancer.v1.virtual_host_pb2'
  # @@protoc_insertion_point(class_scope:yandex.cloud.apploadbalancer.v1.RedirectAction)
  })
_sym_db.RegisterMessage(RedirectAction)

DirectResponseAction = _reflection.GeneratedProtocolMessageType('DirectResponseAction', (_message.Message,), {
  'DESCRIPTOR' : _DIRECTRESPONSEACTION,
  '__module__' : 'yandex.cloud.apploadbalancer.v1.virtual_host_pb2'
  # @@protoc_insertion_point(class_scope:yandex.cloud.apploadbalancer.v1.DirectResponseAction)
  })
_sym_db.RegisterMessage(DirectResponseAction)

GrpcStatusResponseAction = _reflection.GeneratedProtocolMessageType('GrpcStatusResponseAction', (_message.Message,), {
  'DESCRIPTOR' : _GRPCSTATUSRESPONSEACTION,
  '__module__' : 'yandex.cloud.apploadbalancer.v1.virtual_host_pb2'
  # @@protoc_insertion_point(class_scope:yandex.cloud.apploadbalancer.v1.GrpcStatusResponseAction)
  })
_sym_db.RegisterMessage(GrpcStatusResponseAction)

HttpRouteAction = _reflection.GeneratedProtocolMessageType('HttpRouteAction', (_message.Message,), {
  'DESCRIPTOR' : _HTTPROUTEACTION,
  '__module__' : 'yandex.cloud.apploadbalancer.v1.virtual_host_pb2'
  # @@protoc_insertion_point(class_scope:yandex.cloud.apploadbalancer.v1.HttpRouteAction)
  })
_sym_db.RegisterMessage(HttpRouteAction)

GrpcRouteAction = _reflection.GeneratedProtocolMessageType('GrpcRouteAction', (_message.Message,), {
  'DESCRIPTOR' : _GRPCROUTEACTION,
  '__module__' : 'yandex.cloud.apploadbalancer.v1.virtual_host_pb2'
  # @@protoc_insertion_point(class_scope:yandex.cloud.apploadbalancer.v1.GrpcRouteAction)
  })
_sym_db.RegisterMessage(GrpcRouteAction)


DESCRIPTOR._options = None
_VIRTUALHOST.fields_by_name['name']._options = None
_RBAC.fields_by_name['action']._options = None
_RBAC.fields_by_name['principals']._options = None
_PRINCIPALS.fields_by_name['and_principals']._options = None
_PRINCIPAL_HEADERMATCHER.fields_by_name['name']._options = None
_PRINCIPAL.oneofs_by_name['identifier']._options = None
_ROUTE.oneofs_by_name['route']._options = None
_ROUTE.fields_by_name['name']._options = None
_HTTPROUTE.oneofs_by_name['action']._options = None
_GRPCROUTE.oneofs_by_name['action']._options = None
_STRINGMATCH.oneofs_by_name['match']._options = None
_DIRECTRESPONSEACTION.fields_by_name['status']._options = None
_HTTPROUTEACTION.fields_by_name['backend_group_id']._options = None
_GRPCROUTEACTION.fields_by_name['backend_group_id']._options = None
# @@protoc_insertion_point(module_scope)
