# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: networking/v1alpha3/virtual_service.proto

import sys
_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
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
from google.protobuf import descriptor_pb2
# @@protoc_insertion_point(imports)

_sym_db = _symbol_database.Default()


from google.protobuf import duration_pb2 as google_dot_protobuf_dot_duration__pb2
from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2


DESCRIPTOR = _descriptor.FileDescriptor(
  name='networking/v1alpha3/virtual_service.proto',
  package='istio.networking.v1alpha3',
  syntax='proto3',
  serialized_pb=_b('\n)networking/v1alpha3/virtual_service.proto\x12\x19istio.networking.v1alpha3\x1a\x1egoogle/protobuf/duration.proto\x1a\x1egoogle/protobuf/wrappers.proto\"\x97\x01\n\x0eVirtualService\x12\r\n\x05hosts\x18\x01 \x03(\t\x12\x10\n\x08gateways\x18\x02 \x03(\t\x12\x32\n\x04http\x18\x03 \x03(\x0b\x32$.istio.networking.v1alpha3.HTTPRoute\x12\x30\n\x03tcp\x18\x04 \x03(\x0b\x32#.istio.networking.v1alpha3.TCPRoute\"b\n\x0b\x44\x65stination\x12\x0c\n\x04host\x18\x01 \x01(\t\x12\x0e\n\x06subset\x18\x02 \x01(\t\x12\x35\n\x04port\x18\x03 \x01(\x0b\x32\'.istio.networking.v1alpha3.PortSelector\"\xaf\x05\n\tHTTPRoute\x12:\n\x05match\x18\x01 \x03(\x0b\x32+.istio.networking.v1alpha3.HTTPMatchRequest\x12;\n\x05route\x18\x02 \x03(\x0b\x32,.istio.networking.v1alpha3.DestinationWeight\x12\x39\n\x08redirect\x18\x03 \x01(\x0b\x32\'.istio.networking.v1alpha3.HTTPRedirect\x12\x37\n\x07rewrite\x18\x04 \x01(\x0b\x32&.istio.networking.v1alpha3.HTTPRewrite\x12\x19\n\x11websocket_upgrade\x18\x05 \x01(\x08\x12*\n\x07timeout\x18\x06 \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x35\n\x07retries\x18\x07 \x01(\x0b\x32$.istio.networking.v1alpha3.HTTPRetry\x12<\n\x05\x66\x61ult\x18\x08 \x01(\x0b\x32-.istio.networking.v1alpha3.HTTPFaultInjection\x12\x36\n\x06mirror\x18\t \x01(\x0b\x32&.istio.networking.v1alpha3.Destination\x12:\n\x0b\x63ors_policy\x18\n \x01(\x0b\x32%.istio.networking.v1alpha3.CorsPolicy\x12O\n\x0e\x61ppend_headers\x18\x0b \x03(\x0b\x32\x37.istio.networking.v1alpha3.HTTPRoute.AppendHeadersEntry\x1a\x34\n\x12\x41ppendHeadersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x84\x01\n\x08TCPRoute\x12;\n\x05match\x18\x01 \x03(\x0b\x32,.istio.networking.v1alpha3.L4MatchAttributes\x12;\n\x05route\x18\x02 \x03(\x0b\x32,.istio.networking.v1alpha3.DestinationWeight\"\xc0\x04\n\x10HTTPMatchRequest\x12\x33\n\x03uri\x18\x01 \x01(\x0b\x32&.istio.networking.v1alpha3.StringMatch\x12\x36\n\x06scheme\x18\x02 \x01(\x0b\x32&.istio.networking.v1alpha3.StringMatch\x12\x36\n\x06method\x18\x03 \x01(\x0b\x32&.istio.networking.v1alpha3.StringMatch\x12\x39\n\tauthority\x18\x04 \x01(\x0b\x32&.istio.networking.v1alpha3.StringMatch\x12I\n\x07headers\x18\x05 \x03(\x0b\x32\x38.istio.networking.v1alpha3.HTTPMatchRequest.HeadersEntry\x12\x0c\n\x04port\x18\x06 \x01(\r\x12T\n\rsource_labels\x18\x07 \x03(\x0b\x32=.istio.networking.v1alpha3.HTTPMatchRequest.SourceLabelsEntry\x12\x10\n\x08gateways\x18\x08 \x03(\t\x1aV\n\x0cHeadersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x35\n\x05value\x18\x02 \x01(\x0b\x32&.istio.networking.v1alpha3.StringMatch:\x02\x38\x01\x1a\x33\n\x11SourceLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"`\n\x11\x44\x65stinationWeight\x12;\n\x0b\x64\x65stination\x18\x01 \x01(\x0b\x32&.istio.networking.v1alpha3.Destination\x12\x0e\n\x06weight\x18\x02 \x01(\x05\"\xf2\x01\n\x11L4MatchAttributes\x12\x1a\n\x12\x64\x65stination_subnet\x18\x01 \x01(\t\x12\x0c\n\x04port\x18\x02 \x01(\r\x12\x15\n\rsource_subnet\x18\x03 \x01(\t\x12U\n\rsource_labels\x18\x04 \x03(\x0b\x32>.istio.networking.v1alpha3.L4MatchAttributes.SourceLabelsEntry\x12\x10\n\x08gateways\x18\x05 \x03(\t\x1a\x33\n\x11SourceLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\".\n\x0cHTTPRedirect\x12\x0b\n\x03uri\x18\x01 \x01(\t\x12\x11\n\tauthority\x18\x02 \x01(\t\"-\n\x0bHTTPRewrite\x12\x0b\n\x03uri\x18\x01 \x01(\t\x12\x11\n\tauthority\x18\x02 \x01(\t\"O\n\x0bStringMatch\x12\x0f\n\x05\x65xact\x18\x01 \x01(\tH\x00\x12\x10\n\x06prefix\x18\x02 \x01(\tH\x00\x12\x0f\n\x05regex\x18\x03 \x01(\tH\x00\x42\x0c\n\nmatch_type\"Q\n\tHTTPRetry\x12\x10\n\x08\x61ttempts\x18\x01 \x01(\x05\x12\x32\n\x0fper_try_timeout\x18\x02 \x01(\x0b\x32\x19.google.protobuf.Duration\"\xcb\x01\n\nCorsPolicy\x12\x14\n\x0c\x61llow_origin\x18\x01 \x03(\t\x12\x15\n\rallow_methods\x18\x02 \x03(\t\x12\x15\n\rallow_headers\x18\x03 \x03(\t\x12\x16\n\x0e\x65xpose_headers\x18\x04 \x03(\t\x12*\n\x07max_age\x18\x05 \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x35\n\x11\x61llow_credentials\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.BoolValue\"\xa1\x03\n\x12HTTPFaultInjection\x12\x42\n\x05\x64\x65lay\x18\x01 \x01(\x0b\x32\x33.istio.networking.v1alpha3.HTTPFaultInjection.Delay\x12\x42\n\x05\x61\x62ort\x18\x02 \x01(\x0b\x32\x33.istio.networking.v1alpha3.HTTPFaultInjection.Abort\x1a\x95\x01\n\x05\x44\x65lay\x12\x0f\n\x07percent\x18\x01 \x01(\x05\x12\x30\n\x0b\x66ixed_delay\x18\x02 \x01(\x0b\x32\x19.google.protobuf.DurationH\x00\x12\x36\n\x11\x65xponential_delay\x18\x03 \x01(\x0b\x32\x19.google.protobuf.DurationH\x00\x42\x11\n\x0fhttp_delay_type\x1ak\n\x05\x41\x62ort\x12\x0f\n\x07percent\x18\x01 \x01(\x05\x12\x15\n\x0bhttp_status\x18\x02 \x01(\x05H\x00\x12\x15\n\x0bgrpc_status\x18\x03 \x01(\tH\x00\x12\x15\n\x0bhttp2_error\x18\x04 \x01(\tH\x00\x42\x0c\n\nerror_type\"8\n\x0cPortSelector\x12\x10\n\x06number\x18\x01 \x01(\rH\x00\x12\x0e\n\x04name\x18\x02 \x01(\tH\x00\x42\x06\n\x04portB\"Z istio.io/api/networking/v1alpha3b\x06proto3')
  ,
  dependencies=[google_dot_protobuf_dot_duration__pb2.DESCRIPTOR,google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,])




_VIRTUALSERVICE = _descriptor.Descriptor(
  name='VirtualService',
  full_name='istio.networking.v1alpha3.VirtualService',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='hosts', full_name='istio.networking.v1alpha3.VirtualService.hosts', 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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='gateways', full_name='istio.networking.v1alpha3.VirtualService.gateways', 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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='http', full_name='istio.networking.v1alpha3.VirtualService.http', 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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='tcp', full_name='istio.networking.v1alpha3.VirtualService.tcp', 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,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=137,
  serialized_end=288,
)


_DESTINATION = _descriptor.Descriptor(
  name='Destination',
  full_name='istio.networking.v1alpha3.Destination',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='host', full_name='istio.networking.v1alpha3.Destination.host', 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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='subset', full_name='istio.networking.v1alpha3.Destination.subset', 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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='port', full_name='istio.networking.v1alpha3.Destination.port', 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,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=290,
  serialized_end=388,
)


_HTTPROUTE_APPENDHEADERSENTRY = _descriptor.Descriptor(
  name='AppendHeadersEntry',
  full_name='istio.networking.v1alpha3.HTTPRoute.AppendHeadersEntry',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='key', full_name='istio.networking.v1alpha3.HTTPRoute.AppendHeadersEntry.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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='value', full_name='istio.networking.v1alpha3.HTTPRoute.AppendHeadersEntry.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,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=_descriptor._ParseOptions(descriptor_pb2.MessageOptions(), _b('8\001')),
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1026,
  serialized_end=1078,
)

_HTTPROUTE = _descriptor.Descriptor(
  name='HTTPRoute',
  full_name='istio.networking.v1alpha3.HTTPRoute',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='match', full_name='istio.networking.v1alpha3.HTTPRoute.match', 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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='route', full_name='istio.networking.v1alpha3.HTTPRoute.route', 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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='redirect', full_name='istio.networking.v1alpha3.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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='rewrite', full_name='istio.networking.v1alpha3.HTTPRoute.rewrite', 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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='websocket_upgrade', full_name='istio.networking.v1alpha3.HTTPRoute.websocket_upgrade', 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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='timeout', full_name='istio.networking.v1alpha3.HTTPRoute.timeout', 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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='retries', full_name='istio.networking.v1alpha3.HTTPRoute.retries', index=6,
      number=7, 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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='fault', full_name='istio.networking.v1alpha3.HTTPRoute.fault', index=7,
      number=8, 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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='mirror', full_name='istio.networking.v1alpha3.HTTPRoute.mirror', index=8,
      number=9, 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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='cors_policy', full_name='istio.networking.v1alpha3.HTTPRoute.cors_policy', index=9,
      number=10, 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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='append_headers', full_name='istio.networking.v1alpha3.HTTPRoute.append_headers', index=10,
      number=11, 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,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[_HTTPROUTE_APPENDHEADERSENTRY, ],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=391,
  serialized_end=1078,
)


_TCPROUTE = _descriptor.Descriptor(
  name='TCPRoute',
  full_name='istio.networking.v1alpha3.TCPRoute',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='match', full_name='istio.networking.v1alpha3.TCPRoute.match', 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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='route', full_name='istio.networking.v1alpha3.TCPRoute.route', 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,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1081,
  serialized_end=1213,
)


_HTTPMATCHREQUEST_HEADERSENTRY = _descriptor.Descriptor(
  name='HeadersEntry',
  full_name='istio.networking.v1alpha3.HTTPMatchRequest.HeadersEntry',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='key', full_name='istio.networking.v1alpha3.HTTPMatchRequest.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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='value', full_name='istio.networking.v1alpha3.HTTPMatchRequest.HeadersEntry.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,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=_descriptor._ParseOptions(descriptor_pb2.MessageOptions(), _b('8\001')),
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1653,
  serialized_end=1739,
)

_HTTPMATCHREQUEST_SOURCELABELSENTRY = _descriptor.Descriptor(
  name='SourceLabelsEntry',
  full_name='istio.networking.v1alpha3.HTTPMatchRequest.SourceLabelsEntry',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='key', full_name='istio.networking.v1alpha3.HTTPMatchRequest.SourceLabelsEntry.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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='value', full_name='istio.networking.v1alpha3.HTTPMatchRequest.SourceLabelsEntry.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,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=_descriptor._ParseOptions(descriptor_pb2.MessageOptions(), _b('8\001')),
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1741,
  serialized_end=1792,
)

_HTTPMATCHREQUEST = _descriptor.Descriptor(
  name='HTTPMatchRequest',
  full_name='istio.networking.v1alpha3.HTTPMatchRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='uri', full_name='istio.networking.v1alpha3.HTTPMatchRequest.uri', 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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='scheme', full_name='istio.networking.v1alpha3.HTTPMatchRequest.scheme', 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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='method', full_name='istio.networking.v1alpha3.HTTPMatchRequest.method', 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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='authority', full_name='istio.networking.v1alpha3.HTTPMatchRequest.authority', 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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='headers', full_name='istio.networking.v1alpha3.HTTPMatchRequest.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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='port', full_name='istio.networking.v1alpha3.HTTPMatchRequest.port', index=5,
      number=6, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='source_labels', full_name='istio.networking.v1alpha3.HTTPMatchRequest.source_labels', index=6,
      number=7, 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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='gateways', full_name='istio.networking.v1alpha3.HTTPMatchRequest.gateways', index=7,
      number=8, 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,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[_HTTPMATCHREQUEST_HEADERSENTRY, _HTTPMATCHREQUEST_SOURCELABELSENTRY, ],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1216,
  serialized_end=1792,
)


_DESTINATIONWEIGHT = _descriptor.Descriptor(
  name='DestinationWeight',
  full_name='istio.networking.v1alpha3.DestinationWeight',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='destination', full_name='istio.networking.v1alpha3.DestinationWeight.destination', 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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='weight', full_name='istio.networking.v1alpha3.DestinationWeight.weight', index=1,
      number=2, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1794,
  serialized_end=1890,
)


_L4MATCHATTRIBUTES_SOURCELABELSENTRY = _descriptor.Descriptor(
  name='SourceLabelsEntry',
  full_name='istio.networking.v1alpha3.L4MatchAttributes.SourceLabelsEntry',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='key', full_name='istio.networking.v1alpha3.L4MatchAttributes.SourceLabelsEntry.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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='value', full_name='istio.networking.v1alpha3.L4MatchAttributes.SourceLabelsEntry.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,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=_descriptor._ParseOptions(descriptor_pb2.MessageOptions(), _b('8\001')),
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1741,
  serialized_end=1792,
)

_L4MATCHATTRIBUTES = _descriptor.Descriptor(
  name='L4MatchAttributes',
  full_name='istio.networking.v1alpha3.L4MatchAttributes',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='destination_subnet', full_name='istio.networking.v1alpha3.L4MatchAttributes.destination_subnet', 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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='port', full_name='istio.networking.v1alpha3.L4MatchAttributes.port', index=1,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='source_subnet', full_name='istio.networking.v1alpha3.L4MatchAttributes.source_subnet', 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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='source_labels', full_name='istio.networking.v1alpha3.L4MatchAttributes.source_labels', 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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='gateways', full_name='istio.networking.v1alpha3.L4MatchAttributes.gateways', index=4,
      number=5, 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,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[_L4MATCHATTRIBUTES_SOURCELABELSENTRY, ],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1893,
  serialized_end=2135,
)


_HTTPREDIRECT = _descriptor.Descriptor(
  name='HTTPRedirect',
  full_name='istio.networking.v1alpha3.HTTPRedirect',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='uri', full_name='istio.networking.v1alpha3.HTTPRedirect.uri', 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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='authority', full_name='istio.networking.v1alpha3.HTTPRedirect.authority', 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,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2137,
  serialized_end=2183,
)


_HTTPREWRITE = _descriptor.Descriptor(
  name='HTTPRewrite',
  full_name='istio.networking.v1alpha3.HTTPRewrite',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='uri', full_name='istio.networking.v1alpha3.HTTPRewrite.uri', 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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='authority', full_name='istio.networking.v1alpha3.HTTPRewrite.authority', 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,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2185,
  serialized_end=2230,
)


_STRINGMATCH = _descriptor.Descriptor(
  name='StringMatch',
  full_name='istio.networking.v1alpha3.StringMatch',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='exact', full_name='istio.networking.v1alpha3.StringMatch.exact', 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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='prefix', full_name='istio.networking.v1alpha3.StringMatch.prefix', 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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='regex', full_name='istio.networking.v1alpha3.StringMatch.regex', 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,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='match_type', full_name='istio.networking.v1alpha3.StringMatch.match_type',
      index=0, containing_type=None, fields=[]),
  ],
  serialized_start=2232,
  serialized_end=2311,
)


_HTTPRETRY = _descriptor.Descriptor(
  name='HTTPRetry',
  full_name='istio.networking.v1alpha3.HTTPRetry',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='attempts', full_name='istio.networking.v1alpha3.HTTPRetry.attempts', index=0,
      number=1, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='per_try_timeout', full_name='istio.networking.v1alpha3.HTTPRetry.per_try_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,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2313,
  serialized_end=2394,
)


_CORSPOLICY = _descriptor.Descriptor(
  name='CorsPolicy',
  full_name='istio.networking.v1alpha3.CorsPolicy',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='allow_origin', full_name='istio.networking.v1alpha3.CorsPolicy.allow_origin', 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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='allow_methods', full_name='istio.networking.v1alpha3.CorsPolicy.allow_methods', 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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='allow_headers', full_name='istio.networking.v1alpha3.CorsPolicy.allow_headers', index=2,
      number=3, 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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='expose_headers', full_name='istio.networking.v1alpha3.CorsPolicy.expose_headers', index=3,
      number=4, 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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='max_age', full_name='istio.networking.v1alpha3.CorsPolicy.max_age', index=4,
      number=5, 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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='allow_credentials', full_name='istio.networking.v1alpha3.CorsPolicy.allow_credentials', 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,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2397,
  serialized_end=2600,
)


_HTTPFAULTINJECTION_DELAY = _descriptor.Descriptor(
  name='Delay',
  full_name='istio.networking.v1alpha3.HTTPFaultInjection.Delay',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='percent', full_name='istio.networking.v1alpha3.HTTPFaultInjection.Delay.percent', index=0,
      number=1, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='fixed_delay', full_name='istio.networking.v1alpha3.HTTPFaultInjection.Delay.fixed_delay', 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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='exponential_delay', full_name='istio.networking.v1alpha3.HTTPFaultInjection.Delay.exponential_delay', 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,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='http_delay_type', full_name='istio.networking.v1alpha3.HTTPFaultInjection.Delay.http_delay_type',
      index=0, containing_type=None, fields=[]),
  ],
  serialized_start=2762,
  serialized_end=2911,
)

_HTTPFAULTINJECTION_ABORT = _descriptor.Descriptor(
  name='Abort',
  full_name='istio.networking.v1alpha3.HTTPFaultInjection.Abort',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='percent', full_name='istio.networking.v1alpha3.HTTPFaultInjection.Abort.percent', index=0,
      number=1, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='http_status', full_name='istio.networking.v1alpha3.HTTPFaultInjection.Abort.http_status', index=1,
      number=2, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='grpc_status', full_name='istio.networking.v1alpha3.HTTPFaultInjection.Abort.grpc_status', 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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='http2_error', full_name='istio.networking.v1alpha3.HTTPFaultInjection.Abort.http2_error', 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,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='error_type', full_name='istio.networking.v1alpha3.HTTPFaultInjection.Abort.error_type',
      index=0, containing_type=None, fields=[]),
  ],
  serialized_start=2913,
  serialized_end=3020,
)

_HTTPFAULTINJECTION = _descriptor.Descriptor(
  name='HTTPFaultInjection',
  full_name='istio.networking.v1alpha3.HTTPFaultInjection',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='delay', full_name='istio.networking.v1alpha3.HTTPFaultInjection.delay', 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,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='abort', full_name='istio.networking.v1alpha3.HTTPFaultInjection.abort', 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,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[_HTTPFAULTINJECTION_DELAY, _HTTPFAULTINJECTION_ABORT, ],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2603,
  serialized_end=3020,
)


_PORTSELECTOR = _descriptor.Descriptor(
  name='PortSelector',
  full_name='istio.networking.v1alpha3.PortSelector',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='number', full_name='istio.networking.v1alpha3.PortSelector.number', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='name', full_name='istio.networking.v1alpha3.PortSelector.name', 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,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='port', full_name='istio.networking.v1alpha3.PortSelector.port',
      index=0, containing_type=None, fields=[]),
  ],
  serialized_start=3022,
  serialized_end=3078,
)

_VIRTUALSERVICE.fields_by_name['http'].message_type = _HTTPROUTE
_VIRTUALSERVICE.fields_by_name['tcp'].message_type = _TCPROUTE
_DESTINATION.fields_by_name['port'].message_type = _PORTSELECTOR
_HTTPROUTE_APPENDHEADERSENTRY.containing_type = _HTTPROUTE
_HTTPROUTE.fields_by_name['match'].message_type = _HTTPMATCHREQUEST
_HTTPROUTE.fields_by_name['route'].message_type = _DESTINATIONWEIGHT
_HTTPROUTE.fields_by_name['redirect'].message_type = _HTTPREDIRECT
_HTTPROUTE.fields_by_name['rewrite'].message_type = _HTTPREWRITE
_HTTPROUTE.fields_by_name['timeout'].message_type = google_dot_protobuf_dot_duration__pb2._DURATION
_HTTPROUTE.fields_by_name['retries'].message_type = _HTTPRETRY
_HTTPROUTE.fields_by_name['fault'].message_type = _HTTPFAULTINJECTION
_HTTPROUTE.fields_by_name['mirror'].message_type = _DESTINATION
_HTTPROUTE.fields_by_name['cors_policy'].message_type = _CORSPOLICY
_HTTPROUTE.fields_by_name['append_headers'].message_type = _HTTPROUTE_APPENDHEADERSENTRY
_TCPROUTE.fields_by_name['match'].message_type = _L4MATCHATTRIBUTES
_TCPROUTE.fields_by_name['route'].message_type = _DESTINATIONWEIGHT
_HTTPMATCHREQUEST_HEADERSENTRY.fields_by_name['value'].message_type = _STRINGMATCH
_HTTPMATCHREQUEST_HEADERSENTRY.containing_type = _HTTPMATCHREQUEST
_HTTPMATCHREQUEST_SOURCELABELSENTRY.containing_type = _HTTPMATCHREQUEST
_HTTPMATCHREQUEST.fields_by_name['uri'].message_type = _STRINGMATCH
_HTTPMATCHREQUEST.fields_by_name['scheme'].message_type = _STRINGMATCH
_HTTPMATCHREQUEST.fields_by_name['method'].message_type = _STRINGMATCH
_HTTPMATCHREQUEST.fields_by_name['authority'].message_type = _STRINGMATCH
_HTTPMATCHREQUEST.fields_by_name['headers'].message_type = _HTTPMATCHREQUEST_HEADERSENTRY
_HTTPMATCHREQUEST.fields_by_name['source_labels'].message_type = _HTTPMATCHREQUEST_SOURCELABELSENTRY
_DESTINATIONWEIGHT.fields_by_name['destination'].message_type = _DESTINATION
_L4MATCHATTRIBUTES_SOURCELABELSENTRY.containing_type = _L4MATCHATTRIBUTES
_L4MATCHATTRIBUTES.fields_by_name['source_labels'].message_type = _L4MATCHATTRIBUTES_SOURCELABELSENTRY
_STRINGMATCH.oneofs_by_name['match_type'].fields.append(
  _STRINGMATCH.fields_by_name['exact'])
_STRINGMATCH.fields_by_name['exact'].containing_oneof = _STRINGMATCH.oneofs_by_name['match_type']
_STRINGMATCH.oneofs_by_name['match_type'].fields.append(
  _STRINGMATCH.fields_by_name['prefix'])
_STRINGMATCH.fields_by_name['prefix'].containing_oneof = _STRINGMATCH.oneofs_by_name['match_type']
_STRINGMATCH.oneofs_by_name['match_type'].fields.append(
  _STRINGMATCH.fields_by_name['regex'])
_STRINGMATCH.fields_by_name['regex'].containing_oneof = _STRINGMATCH.oneofs_by_name['match_type']
_HTTPRETRY.fields_by_name['per_try_timeout'].message_type = google_dot_protobuf_dot_duration__pb2._DURATION
_CORSPOLICY.fields_by_name['max_age'].message_type = google_dot_protobuf_dot_duration__pb2._DURATION
_CORSPOLICY.fields_by_name['allow_credentials'].message_type = google_dot_protobuf_dot_wrappers__pb2._BOOLVALUE
_HTTPFAULTINJECTION_DELAY.fields_by_name['fixed_delay'].message_type = google_dot_protobuf_dot_duration__pb2._DURATION
_HTTPFAULTINJECTION_DELAY.fields_by_name['exponential_delay'].message_type = google_dot_protobuf_dot_duration__pb2._DURATION
_HTTPFAULTINJECTION_DELAY.containing_type = _HTTPFAULTINJECTION
_HTTPFAULTINJECTION_DELAY.oneofs_by_name['http_delay_type'].fields.append(
  _HTTPFAULTINJECTION_DELAY.fields_by_name['fixed_delay'])
_HTTPFAULTINJECTION_DELAY.fields_by_name['fixed_delay'].containing_oneof = _HTTPFAULTINJECTION_DELAY.oneofs_by_name['http_delay_type']
_HTTPFAULTINJECTION_DELAY.oneofs_by_name['http_delay_type'].fields.append(
  _HTTPFAULTINJECTION_DELAY.fields_by_name['exponential_delay'])
_HTTPFAULTINJECTION_DELAY.fields_by_name['exponential_delay'].containing_oneof = _HTTPFAULTINJECTION_DELAY.oneofs_by_name['http_delay_type']
_HTTPFAULTINJECTION_ABORT.containing_type = _HTTPFAULTINJECTION
_HTTPFAULTINJECTION_ABORT.oneofs_by_name['error_type'].fields.append(
  _HTTPFAULTINJECTION_ABORT.fields_by_name['http_status'])
_HTTPFAULTINJECTION_ABORT.fields_by_name['http_status'].containing_oneof = _HTTPFAULTINJECTION_ABORT.oneofs_by_name['error_type']
_HTTPFAULTINJECTION_ABORT.oneofs_by_name['error_type'].fields.append(
  _HTTPFAULTINJECTION_ABORT.fields_by_name['grpc_status'])
_HTTPFAULTINJECTION_ABORT.fields_by_name['grpc_status'].containing_oneof = _HTTPFAULTINJECTION_ABORT.oneofs_by_name['error_type']
_HTTPFAULTINJECTION_ABORT.oneofs_by_name['error_type'].fields.append(
  _HTTPFAULTINJECTION_ABORT.fields_by_name['http2_error'])
_HTTPFAULTINJECTION_ABORT.fields_by_name['http2_error'].containing_oneof = _HTTPFAULTINJECTION_ABORT.oneofs_by_name['error_type']
_HTTPFAULTINJECTION.fields_by_name['delay'].message_type = _HTTPFAULTINJECTION_DELAY
_HTTPFAULTINJECTION.fields_by_name['abort'].message_type = _HTTPFAULTINJECTION_ABORT
_PORTSELECTOR.oneofs_by_name['port'].fields.append(
  _PORTSELECTOR.fields_by_name['number'])
_PORTSELECTOR.fields_by_name['number'].containing_oneof = _PORTSELECTOR.oneofs_by_name['port']
_PORTSELECTOR.oneofs_by_name['port'].fields.append(
  _PORTSELECTOR.fields_by_name['name'])
_PORTSELECTOR.fields_by_name['name'].containing_oneof = _PORTSELECTOR.oneofs_by_name['port']
DESCRIPTOR.message_types_by_name['VirtualService'] = _VIRTUALSERVICE
DESCRIPTOR.message_types_by_name['Destination'] = _DESTINATION
DESCRIPTOR.message_types_by_name['HTTPRoute'] = _HTTPROUTE
DESCRIPTOR.message_types_by_name['TCPRoute'] = _TCPROUTE
DESCRIPTOR.message_types_by_name['HTTPMatchRequest'] = _HTTPMATCHREQUEST
DESCRIPTOR.message_types_by_name['DestinationWeight'] = _DESTINATIONWEIGHT
DESCRIPTOR.message_types_by_name['L4MatchAttributes'] = _L4MATCHATTRIBUTES
DESCRIPTOR.message_types_by_name['HTTPRedirect'] = _HTTPREDIRECT
DESCRIPTOR.message_types_by_name['HTTPRewrite'] = _HTTPREWRITE
DESCRIPTOR.message_types_by_name['StringMatch'] = _STRINGMATCH
DESCRIPTOR.message_types_by_name['HTTPRetry'] = _HTTPRETRY
DESCRIPTOR.message_types_by_name['CorsPolicy'] = _CORSPOLICY
DESCRIPTOR.message_types_by_name['HTTPFaultInjection'] = _HTTPFAULTINJECTION
DESCRIPTOR.message_types_by_name['PortSelector'] = _PORTSELECTOR
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

VirtualService = _reflection.GeneratedProtocolMessageType('VirtualService', (_message.Message,), dict(
  DESCRIPTOR = _VIRTUALSERVICE,
  __module__ = 'networking.v1alpha3.virtual_service_pb2'
  # @@protoc_insertion_point(class_scope:istio.networking.v1alpha3.VirtualService)
  ))
_sym_db.RegisterMessage(VirtualService)

Destination = _reflection.GeneratedProtocolMessageType('Destination', (_message.Message,), dict(
  DESCRIPTOR = _DESTINATION,
  __module__ = 'networking.v1alpha3.virtual_service_pb2'
  # @@protoc_insertion_point(class_scope:istio.networking.v1alpha3.Destination)
  ))
_sym_db.RegisterMessage(Destination)

HTTPRoute = _reflection.GeneratedProtocolMessageType('HTTPRoute', (_message.Message,), dict(

  AppendHeadersEntry = _reflection.GeneratedProtocolMessageType('AppendHeadersEntry', (_message.Message,), dict(
    DESCRIPTOR = _HTTPROUTE_APPENDHEADERSENTRY,
    __module__ = 'networking.v1alpha3.virtual_service_pb2'
    # @@protoc_insertion_point(class_scope:istio.networking.v1alpha3.HTTPRoute.AppendHeadersEntry)
    ))
  ,
  DESCRIPTOR = _HTTPROUTE,
  __module__ = 'networking.v1alpha3.virtual_service_pb2'
  # @@protoc_insertion_point(class_scope:istio.networking.v1alpha3.HTTPRoute)
  ))
_sym_db.RegisterMessage(HTTPRoute)
_sym_db.RegisterMessage(HTTPRoute.AppendHeadersEntry)

TCPRoute = _reflection.GeneratedProtocolMessageType('TCPRoute', (_message.Message,), dict(
  DESCRIPTOR = _TCPROUTE,
  __module__ = 'networking.v1alpha3.virtual_service_pb2'
  # @@protoc_insertion_point(class_scope:istio.networking.v1alpha3.TCPRoute)
  ))
_sym_db.RegisterMessage(TCPRoute)

HTTPMatchRequest = _reflection.GeneratedProtocolMessageType('HTTPMatchRequest', (_message.Message,), dict(

  HeadersEntry = _reflection.GeneratedProtocolMessageType('HeadersEntry', (_message.Message,), dict(
    DESCRIPTOR = _HTTPMATCHREQUEST_HEADERSENTRY,
    __module__ = 'networking.v1alpha3.virtual_service_pb2'
    # @@protoc_insertion_point(class_scope:istio.networking.v1alpha3.HTTPMatchRequest.HeadersEntry)
    ))
  ,

  SourceLabelsEntry = _reflection.GeneratedProtocolMessageType('SourceLabelsEntry', (_message.Message,), dict(
    DESCRIPTOR = _HTTPMATCHREQUEST_SOURCELABELSENTRY,
    __module__ = 'networking.v1alpha3.virtual_service_pb2'
    # @@protoc_insertion_point(class_scope:istio.networking.v1alpha3.HTTPMatchRequest.SourceLabelsEntry)
    ))
  ,
  DESCRIPTOR = _HTTPMATCHREQUEST,
  __module__ = 'networking.v1alpha3.virtual_service_pb2'
  # @@protoc_insertion_point(class_scope:istio.networking.v1alpha3.HTTPMatchRequest)
  ))
_sym_db.RegisterMessage(HTTPMatchRequest)
_sym_db.RegisterMessage(HTTPMatchRequest.HeadersEntry)
_sym_db.RegisterMessage(HTTPMatchRequest.SourceLabelsEntry)

DestinationWeight = _reflection.GeneratedProtocolMessageType('DestinationWeight', (_message.Message,), dict(
  DESCRIPTOR = _DESTINATIONWEIGHT,
  __module__ = 'networking.v1alpha3.virtual_service_pb2'
  # @@protoc_insertion_point(class_scope:istio.networking.v1alpha3.DestinationWeight)
  ))
_sym_db.RegisterMessage(DestinationWeight)

L4MatchAttributes = _reflection.GeneratedProtocolMessageType('L4MatchAttributes', (_message.Message,), dict(

  SourceLabelsEntry = _reflection.GeneratedProtocolMessageType('SourceLabelsEntry', (_message.Message,), dict(
    DESCRIPTOR = _L4MATCHATTRIBUTES_SOURCELABELSENTRY,
    __module__ = 'networking.v1alpha3.virtual_service_pb2'
    # @@protoc_insertion_point(class_scope:istio.networking.v1alpha3.L4MatchAttributes.SourceLabelsEntry)
    ))
  ,
  DESCRIPTOR = _L4MATCHATTRIBUTES,
  __module__ = 'networking.v1alpha3.virtual_service_pb2'
  # @@protoc_insertion_point(class_scope:istio.networking.v1alpha3.L4MatchAttributes)
  ))
_sym_db.RegisterMessage(L4MatchAttributes)
_sym_db.RegisterMessage(L4MatchAttributes.SourceLabelsEntry)

HTTPRedirect = _reflection.GeneratedProtocolMessageType('HTTPRedirect', (_message.Message,), dict(
  DESCRIPTOR = _HTTPREDIRECT,
  __module__ = 'networking.v1alpha3.virtual_service_pb2'
  # @@protoc_insertion_point(class_scope:istio.networking.v1alpha3.HTTPRedirect)
  ))
_sym_db.RegisterMessage(HTTPRedirect)

HTTPRewrite = _reflection.GeneratedProtocolMessageType('HTTPRewrite', (_message.Message,), dict(
  DESCRIPTOR = _HTTPREWRITE,
  __module__ = 'networking.v1alpha3.virtual_service_pb2'
  # @@protoc_insertion_point(class_scope:istio.networking.v1alpha3.HTTPRewrite)
  ))
_sym_db.RegisterMessage(HTTPRewrite)

StringMatch = _reflection.GeneratedProtocolMessageType('StringMatch', (_message.Message,), dict(
  DESCRIPTOR = _STRINGMATCH,
  __module__ = 'networking.v1alpha3.virtual_service_pb2'
  # @@protoc_insertion_point(class_scope:istio.networking.v1alpha3.StringMatch)
  ))
_sym_db.RegisterMessage(StringMatch)

HTTPRetry = _reflection.GeneratedProtocolMessageType('HTTPRetry', (_message.Message,), dict(
  DESCRIPTOR = _HTTPRETRY,
  __module__ = 'networking.v1alpha3.virtual_service_pb2'
  # @@protoc_insertion_point(class_scope:istio.networking.v1alpha3.HTTPRetry)
  ))
_sym_db.RegisterMessage(HTTPRetry)

CorsPolicy = _reflection.GeneratedProtocolMessageType('CorsPolicy', (_message.Message,), dict(
  DESCRIPTOR = _CORSPOLICY,
  __module__ = 'networking.v1alpha3.virtual_service_pb2'
  # @@protoc_insertion_point(class_scope:istio.networking.v1alpha3.CorsPolicy)
  ))
_sym_db.RegisterMessage(CorsPolicy)

HTTPFaultInjection = _reflection.GeneratedProtocolMessageType('HTTPFaultInjection', (_message.Message,), dict(

  Delay = _reflection.GeneratedProtocolMessageType('Delay', (_message.Message,), dict(
    DESCRIPTOR = _HTTPFAULTINJECTION_DELAY,
    __module__ = 'networking.v1alpha3.virtual_service_pb2'
    # @@protoc_insertion_point(class_scope:istio.networking.v1alpha3.HTTPFaultInjection.Delay)
    ))
  ,

  Abort = _reflection.GeneratedProtocolMessageType('Abort', (_message.Message,), dict(
    DESCRIPTOR = _HTTPFAULTINJECTION_ABORT,
    __module__ = 'networking.v1alpha3.virtual_service_pb2'
    # @@protoc_insertion_point(class_scope:istio.networking.v1alpha3.HTTPFaultInjection.Abort)
    ))
  ,
  DESCRIPTOR = _HTTPFAULTINJECTION,
  __module__ = 'networking.v1alpha3.virtual_service_pb2'
  # @@protoc_insertion_point(class_scope:istio.networking.v1alpha3.HTTPFaultInjection)
  ))
_sym_db.RegisterMessage(HTTPFaultInjection)
_sym_db.RegisterMessage(HTTPFaultInjection.Delay)
_sym_db.RegisterMessage(HTTPFaultInjection.Abort)

PortSelector = _reflection.GeneratedProtocolMessageType('PortSelector', (_message.Message,), dict(
  DESCRIPTOR = _PORTSELECTOR,
  __module__ = 'networking.v1alpha3.virtual_service_pb2'
  # @@protoc_insertion_point(class_scope:istio.networking.v1alpha3.PortSelector)
  ))
_sym_db.RegisterMessage(PortSelector)


DESCRIPTOR.has_options = True
DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('Z istio.io/api/networking/v1alpha3'))
_HTTPROUTE_APPENDHEADERSENTRY.has_options = True
_HTTPROUTE_APPENDHEADERSENTRY._options = _descriptor._ParseOptions(descriptor_pb2.MessageOptions(), _b('8\001'))
_HTTPMATCHREQUEST_HEADERSENTRY.has_options = True
_HTTPMATCHREQUEST_HEADERSENTRY._options = _descriptor._ParseOptions(descriptor_pb2.MessageOptions(), _b('8\001'))
_HTTPMATCHREQUEST_SOURCELABELSENTRY.has_options = True
_HTTPMATCHREQUEST_SOURCELABELSENTRY._options = _descriptor._ParseOptions(descriptor_pb2.MessageOptions(), _b('8\001'))
_L4MATCHATTRIBUTES_SOURCELABELSENTRY.has_options = True
_L4MATCHATTRIBUTES_SOURCELABELSENTRY._options = _descriptor._ParseOptions(descriptor_pb2.MessageOptions(), _b('8\001'))
# @@protoc_insertion_point(module_scope)
