# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: envoy/extensions/filters/http/admission_control/v3alpha/admission_control.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 envoy.config.core.v3 import base_pb2 as envoy_dot_config_dot_core_dot_v3_dot_base__pb2
from envoy.type.v3 import range_pb2 as envoy_dot_type_dot_v3_dot_range__pb2
from google.protobuf import duration_pb2 as google_dot_protobuf_dot_duration__pb2
from udpa.annotations import status_pb2 as udpa_dot_annotations_dot_status__pb2
from validate import validate_pb2 as validate_dot_validate__pb2


DESCRIPTOR = _descriptor.FileDescriptor(
  name='envoy/extensions/filters/http/admission_control/v3alpha/admission_control.proto',
  package='envoy.extensions.filters.http.admission_control.v3alpha',
  syntax='proto3',
  serialized_options=b'\nEio.envoyproxy.envoy.extensions.filters.http.admission_control.v3alphaB\025AdmissionControlProtoP\001\272\200\310\321\006\002\010\001\272\200\310\321\006\002\020\002',
  create_key=_descriptor._internal_create_key,
  serialized_pb=b'\nOenvoy/extensions/filters/http/admission_control/v3alpha/admission_control.proto\x12\x37\x65nvoy.extensions.filters.http.admission_control.v3alpha\x1a\x1f\x65nvoy/config/core/v3/base.proto\x1a\x19\x65nvoy/type/v3/range.proto\x1a\x1egoogle/protobuf/duration.proto\x1a\x1dudpa/annotations/status.proto\x1a\x17validate/validate.proto\"\xa4\x06\n\x10\x41\x64missionControl\x12\x39\n\x07\x65nabled\x18\x01 \x01(\x0b\x32(.envoy.config.core.v3.RuntimeFeatureFlag\x12u\n\x10success_criteria\x18\x02 \x01(\x0b\x32Y.envoy.extensions.filters.http.admission_control.v3alpha.AdmissionControl.SuccessCriteriaH\x00\x12\x32\n\x0fsampling_window\x18\x03 \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x37\n\naggression\x18\x04 \x01(\x0b\x32#.envoy.config.core.v3.RuntimeDouble\x12:\n\x0csr_threshold\x18\x05 \x01(\x0b\x32$.envoy.config.core.v3.RuntimePercent\x1a\x98\x03\n\x0fSuccessCriteria\x12}\n\rhttp_criteria\x18\x01 \x01(\x0b\x32\x66.envoy.extensions.filters.http.admission_control.v3alpha.AdmissionControl.SuccessCriteria.HttpCriteria\x12}\n\rgrpc_criteria\x18\x02 \x01(\x0b\x32\x66.envoy.extensions.filters.http.admission_control.v3alpha.AdmissionControl.SuccessCriteria.GrpcCriteria\x1aP\n\x0cHttpCriteria\x12@\n\x13http_success_status\x18\x01 \x03(\x0b\x32\x19.envoy.type.v3.Int32RangeB\x08\xfa\x42\x05\x92\x01\x02\x08\x01\x1a\x35\n\x0cGrpcCriteria\x12%\n\x13grpc_success_status\x18\x01 \x03(\rB\x08\xfa\x42\x05\x92\x01\x02\x08\x01\x42\x1a\n\x13\x65valuation_criteria\x12\x03\xf8\x42\x01\x42p\nEio.envoyproxy.envoy.extensions.filters.http.admission_control.v3alphaB\x15\x41\x64missionControlProtoP\x01\xba\x80\xc8\xd1\x06\x02\x08\x01\xba\x80\xc8\xd1\x06\x02\x10\x02\x62\x06proto3'
  ,
  dependencies=[envoy_dot_config_dot_core_dot_v3_dot_base__pb2.DESCRIPTOR,envoy_dot_type_dot_v3_dot_range__pb2.DESCRIPTOR,google_dot_protobuf_dot_duration__pb2.DESCRIPTOR,udpa_dot_annotations_dot_status__pb2.DESCRIPTOR,validate_dot_validate__pb2.DESCRIPTOR,])




_ADMISSIONCONTROL_SUCCESSCRITERIA_HTTPCRITERIA = _descriptor.Descriptor(
  name='HttpCriteria',
  full_name='envoy.extensions.filters.http.admission_control.v3alpha.AdmissionControl.SuccessCriteria.HttpCriteria',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='http_success_status', full_name='envoy.extensions.filters.http.admission_control.v3alpha.AdmissionControl.SuccessCriteria.HttpCriteria.http_success_status', 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'\372B\005\222\001\002\010\001', 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=930,
  serialized_end=1010,
)

_ADMISSIONCONTROL_SUCCESSCRITERIA_GRPCCRITERIA = _descriptor.Descriptor(
  name='GrpcCriteria',
  full_name='envoy.extensions.filters.http.admission_control.v3alpha.AdmissionControl.SuccessCriteria.GrpcCriteria',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='grpc_success_status', full_name='envoy.extensions.filters.http.admission_control.v3alpha.AdmissionControl.SuccessCriteria.GrpcCriteria.grpc_success_status', index=0,
      number=1, type=13, cpp_type=3, 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'\372B\005\222\001\002\010\001', 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=1012,
  serialized_end=1065,
)

_ADMISSIONCONTROL_SUCCESSCRITERIA = _descriptor.Descriptor(
  name='SuccessCriteria',
  full_name='envoy.extensions.filters.http.admission_control.v3alpha.AdmissionControl.SuccessCriteria',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='http_criteria', full_name='envoy.extensions.filters.http.admission_control.v3alpha.AdmissionControl.SuccessCriteria.http_criteria', 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='grpc_criteria', full_name='envoy.extensions.filters.http.admission_control.v3alpha.AdmissionControl.SuccessCriteria.grpc_criteria', 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=[_ADMISSIONCONTROL_SUCCESSCRITERIA_HTTPCRITERIA, _ADMISSIONCONTROL_SUCCESSCRITERIA_GRPCCRITERIA, ],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=657,
  serialized_end=1065,
)

_ADMISSIONCONTROL = _descriptor.Descriptor(
  name='AdmissionControl',
  full_name='envoy.extensions.filters.http.admission_control.v3alpha.AdmissionControl',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='enabled', full_name='envoy.extensions.filters.http.admission_control.v3alpha.AdmissionControl.enabled', 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='success_criteria', full_name='envoy.extensions.filters.http.admission_control.v3alpha.AdmissionControl.success_criteria', 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='sampling_window', full_name='envoy.extensions.filters.http.admission_control.v3alpha.AdmissionControl.sampling_window', 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='aggression', full_name='envoy.extensions.filters.http.admission_control.v3alpha.AdmissionControl.aggression', 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),
    _descriptor.FieldDescriptor(
      name='sr_threshold', full_name='envoy.extensions.filters.http.admission_control.v3alpha.AdmissionControl.sr_threshold', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[_ADMISSIONCONTROL_SUCCESSCRITERIA, ],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='evaluation_criteria', full_name='envoy.extensions.filters.http.admission_control.v3alpha.AdmissionControl.evaluation_criteria',
      index=0, containing_type=None,
      create_key=_descriptor._internal_create_key,
    fields=[], serialized_options=b'\370B\001'),
  ],
  serialized_start=289,
  serialized_end=1093,
)

_ADMISSIONCONTROL_SUCCESSCRITERIA_HTTPCRITERIA.fields_by_name['http_success_status'].message_type = envoy_dot_type_dot_v3_dot_range__pb2._INT32RANGE
_ADMISSIONCONTROL_SUCCESSCRITERIA_HTTPCRITERIA.containing_type = _ADMISSIONCONTROL_SUCCESSCRITERIA
_ADMISSIONCONTROL_SUCCESSCRITERIA_GRPCCRITERIA.containing_type = _ADMISSIONCONTROL_SUCCESSCRITERIA
_ADMISSIONCONTROL_SUCCESSCRITERIA.fields_by_name['http_criteria'].message_type = _ADMISSIONCONTROL_SUCCESSCRITERIA_HTTPCRITERIA
_ADMISSIONCONTROL_SUCCESSCRITERIA.fields_by_name['grpc_criteria'].message_type = _ADMISSIONCONTROL_SUCCESSCRITERIA_GRPCCRITERIA
_ADMISSIONCONTROL_SUCCESSCRITERIA.containing_type = _ADMISSIONCONTROL
_ADMISSIONCONTROL.fields_by_name['enabled'].message_type = envoy_dot_config_dot_core_dot_v3_dot_base__pb2._RUNTIMEFEATUREFLAG
_ADMISSIONCONTROL.fields_by_name['success_criteria'].message_type = _ADMISSIONCONTROL_SUCCESSCRITERIA
_ADMISSIONCONTROL.fields_by_name['sampling_window'].message_type = google_dot_protobuf_dot_duration__pb2._DURATION
_ADMISSIONCONTROL.fields_by_name['aggression'].message_type = envoy_dot_config_dot_core_dot_v3_dot_base__pb2._RUNTIMEDOUBLE
_ADMISSIONCONTROL.fields_by_name['sr_threshold'].message_type = envoy_dot_config_dot_core_dot_v3_dot_base__pb2._RUNTIMEPERCENT
_ADMISSIONCONTROL.oneofs_by_name['evaluation_criteria'].fields.append(
  _ADMISSIONCONTROL.fields_by_name['success_criteria'])
_ADMISSIONCONTROL.fields_by_name['success_criteria'].containing_oneof = _ADMISSIONCONTROL.oneofs_by_name['evaluation_criteria']
DESCRIPTOR.message_types_by_name['AdmissionControl'] = _ADMISSIONCONTROL
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

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

  'SuccessCriteria' : _reflection.GeneratedProtocolMessageType('SuccessCriteria', (_message.Message,), {

    'HttpCriteria' : _reflection.GeneratedProtocolMessageType('HttpCriteria', (_message.Message,), {
      'DESCRIPTOR' : _ADMISSIONCONTROL_SUCCESSCRITERIA_HTTPCRITERIA,
      '__module__' : 'envoy.extensions.filters.http.admission_control.v3alpha.admission_control_pb2'
      # @@protoc_insertion_point(class_scope:envoy.extensions.filters.http.admission_control.v3alpha.AdmissionControl.SuccessCriteria.HttpCriteria)
      })
    ,

    'GrpcCriteria' : _reflection.GeneratedProtocolMessageType('GrpcCriteria', (_message.Message,), {
      'DESCRIPTOR' : _ADMISSIONCONTROL_SUCCESSCRITERIA_GRPCCRITERIA,
      '__module__' : 'envoy.extensions.filters.http.admission_control.v3alpha.admission_control_pb2'
      # @@protoc_insertion_point(class_scope:envoy.extensions.filters.http.admission_control.v3alpha.AdmissionControl.SuccessCriteria.GrpcCriteria)
      })
    ,
    'DESCRIPTOR' : _ADMISSIONCONTROL_SUCCESSCRITERIA,
    '__module__' : 'envoy.extensions.filters.http.admission_control.v3alpha.admission_control_pb2'
    # @@protoc_insertion_point(class_scope:envoy.extensions.filters.http.admission_control.v3alpha.AdmissionControl.SuccessCriteria)
    })
  ,
  'DESCRIPTOR' : _ADMISSIONCONTROL,
  '__module__' : 'envoy.extensions.filters.http.admission_control.v3alpha.admission_control_pb2'
  # @@protoc_insertion_point(class_scope:envoy.extensions.filters.http.admission_control.v3alpha.AdmissionControl)
  })
_sym_db.RegisterMessage(AdmissionControl)
_sym_db.RegisterMessage(AdmissionControl.SuccessCriteria)
_sym_db.RegisterMessage(AdmissionControl.SuccessCriteria.HttpCriteria)
_sym_db.RegisterMessage(AdmissionControl.SuccessCriteria.GrpcCriteria)


DESCRIPTOR._options = None
_ADMISSIONCONTROL_SUCCESSCRITERIA_HTTPCRITERIA.fields_by_name['http_success_status']._options = None
_ADMISSIONCONTROL_SUCCESSCRITERIA_GRPCCRITERIA.fields_by_name['grpc_success_status']._options = None
_ADMISSIONCONTROL.oneofs_by_name['evaluation_criteria']._options = None
# @@protoc_insertion_point(module_scope)
