# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: admission_control.proto

import sys

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

# @@protoc_insertion_point(imports)

_sym_db = _symbol_database.Default()


from . import get_with_proof_pb2 as get__with__proof__pb2
from . import transaction_pb2 as transaction__pb2
from . import proof_pb2 as proof__pb2
from . import ledger_info_pb2 as ledger__info__pb2
from . import vm_errors_pb2 as vm__errors__pb2
from . import mempool_status_pb2 as mempool__status__pb2


DESCRIPTOR = _descriptor.FileDescriptor(
    name="admission_control.proto",
    package="admission_control",
    syntax="proto3",
    serialized_options=None,
    serialized_pb=_b(
        '\n\x17\x61\x64mission_control.proto\x12\x11\x61\x64mission_control\x1a\x14get_with_proof.proto\x1a\x11transaction.proto\x1a\x0bproof.proto\x1a\x11ledger_info.proto\x1a\x0fvm_errors.proto\x1a\x14mempool_status.proto"H\n\x18SubmitTransactionRequest\x12,\n\nsigned_txn\x18\x01 \x01(\x0b\x32\x18.types.SignedTransaction"\xe1\x01\n\x19SubmitTransactionResponse\x12$\n\tvm_status\x18\x01 \x01(\x0b\x32\x0f.types.VMStatusH\x00\x12>\n\tac_status\x18\x02 \x01(\x0e\x32).admission_control.AdmissionControlStatusH\x00\x12>\n\x0emempool_status\x18\x03 \x01(\x0e\x32$.mempool.MempoolAddTransactionStatusH\x00\x12\x14\n\x0cvalidator_id\x18\x04 \x01(\x0c\x42\x08\n\x06status*E\n\x16\x41\x64missionControlStatus\x12\x0c\n\x08\x41\x63\x63\x65pted\x10\x00\x12\x0f\n\x0b\x42lacklisted\x10\x01\x12\x0c\n\x08Rejected\x10\x02\x32\xe7\x01\n\x10\x41\x64missionControl\x12p\n\x11SubmitTransaction\x12+.admission_control.SubmitTransactionRequest\x1a,.admission_control.SubmitTransactionResponse"\x00\x12\x61\n\x14UpdateToLatestLedger\x12".types.UpdateToLatestLedgerRequest\x1a#.types.UpdateToLatestLedgerResponse"\x00\x62\x06proto3'
    ),
    dependencies=[
        get__with__proof__pb2.DESCRIPTOR,
        transaction__pb2.DESCRIPTOR,
        proof__pb2.DESCRIPTOR,
        ledger__info__pb2.DESCRIPTOR,
        vm__errors__pb2.DESCRIPTOR,
        mempool__status__pb2.DESCRIPTOR,
    ],
)

_ADMISSIONCONTROLSTATUS = _descriptor.EnumDescriptor(
    name="AdmissionControlStatus",
    full_name="admission_control.AdmissionControlStatus",
    filename=None,
    file=DESCRIPTOR,
    values=[
        _descriptor.EnumValueDescriptor(
            name="Accepted", index=0, number=0, serialized_options=None, type=None
        ),
        _descriptor.EnumValueDescriptor(
            name="Blacklisted", index=1, number=1, serialized_options=None, type=None
        ),
        _descriptor.EnumValueDescriptor(
            name="Rejected", index=2, number=2, serialized_options=None, type=None
        ),
    ],
    containing_type=None,
    serialized_options=None,
    serialized_start=460,
    serialized_end=529,
)
_sym_db.RegisterEnumDescriptor(_ADMISSIONCONTROLSTATUS)

AdmissionControlStatus = enum_type_wrapper.EnumTypeWrapper(_ADMISSIONCONTROLSTATUS)
Accepted = 0
Blacklisted = 1
Rejected = 2


_SUBMITTRANSACTIONREQUEST = _descriptor.Descriptor(
    name="SubmitTransactionRequest",
    full_name="admission_control.SubmitTransactionRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="signed_txn",
            full_name="admission_control.SubmitTransactionRequest.signed_txn",
            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,
        )
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=158,
    serialized_end=230,
)


_SUBMITTRANSACTIONRESPONSE = _descriptor.Descriptor(
    name="SubmitTransactionResponse",
    full_name="admission_control.SubmitTransactionResponse",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="vm_status",
            full_name="admission_control.SubmitTransactionResponse.vm_status",
            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,
        ),
        _descriptor.FieldDescriptor(
            name="ac_status",
            full_name="admission_control.SubmitTransactionResponse.ac_status",
            index=1,
            number=2,
            type=14,
            cpp_type=8,
            label=1,
            has_default_value=False,
            default_value=0,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="mempool_status",
            full_name="admission_control.SubmitTransactionResponse.mempool_status",
            index=2,
            number=3,
            type=14,
            cpp_type=8,
            label=1,
            has_default_value=False,
            default_value=0,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="validator_id",
            full_name="admission_control.SubmitTransactionResponse.validator_id",
            index=3,
            number=4,
            type=12,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b(""),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[
        _descriptor.OneofDescriptor(
            name="status",
            full_name="admission_control.SubmitTransactionResponse.status",
            index=0,
            containing_type=None,
            fields=[],
        )
    ],
    serialized_start=233,
    serialized_end=458,
)

_SUBMITTRANSACTIONREQUEST.fields_by_name[
    "signed_txn"
].message_type = transaction__pb2._SIGNEDTRANSACTION
_SUBMITTRANSACTIONRESPONSE.fields_by_name["vm_status"].message_type = vm__errors__pb2._VMSTATUS
_SUBMITTRANSACTIONRESPONSE.fields_by_name["ac_status"].enum_type = _ADMISSIONCONTROLSTATUS
_SUBMITTRANSACTIONRESPONSE.fields_by_name[
    "mempool_status"
].enum_type = mempool__status__pb2._MEMPOOLADDTRANSACTIONSTATUS
_SUBMITTRANSACTIONRESPONSE.oneofs_by_name["status"].fields.append(
    _SUBMITTRANSACTIONRESPONSE.fields_by_name["vm_status"]
)
_SUBMITTRANSACTIONRESPONSE.fields_by_name[
    "vm_status"
].containing_oneof = _SUBMITTRANSACTIONRESPONSE.oneofs_by_name["status"]
_SUBMITTRANSACTIONRESPONSE.oneofs_by_name["status"].fields.append(
    _SUBMITTRANSACTIONRESPONSE.fields_by_name["ac_status"]
)
_SUBMITTRANSACTIONRESPONSE.fields_by_name[
    "ac_status"
].containing_oneof = _SUBMITTRANSACTIONRESPONSE.oneofs_by_name["status"]
_SUBMITTRANSACTIONRESPONSE.oneofs_by_name["status"].fields.append(
    _SUBMITTRANSACTIONRESPONSE.fields_by_name["mempool_status"]
)
_SUBMITTRANSACTIONRESPONSE.fields_by_name[
    "mempool_status"
].containing_oneof = _SUBMITTRANSACTIONRESPONSE.oneofs_by_name["status"]
DESCRIPTOR.message_types_by_name["SubmitTransactionRequest"] = _SUBMITTRANSACTIONREQUEST
DESCRIPTOR.message_types_by_name["SubmitTransactionResponse"] = _SUBMITTRANSACTIONRESPONSE
DESCRIPTOR.enum_types_by_name["AdmissionControlStatus"] = _ADMISSIONCONTROLSTATUS
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

SubmitTransactionRequest = _reflection.GeneratedProtocolMessageType(
    "SubmitTransactionRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_SUBMITTRANSACTIONREQUEST,
        __module__="admission_control_pb2"
        # @@protoc_insertion_point(class_scope:admission_control.SubmitTransactionRequest)
    ),
)
_sym_db.RegisterMessage(SubmitTransactionRequest)

SubmitTransactionResponse = _reflection.GeneratedProtocolMessageType(
    "SubmitTransactionResponse",
    (_message.Message,),
    dict(
        DESCRIPTOR=_SUBMITTRANSACTIONRESPONSE,
        __module__="admission_control_pb2"
        # @@protoc_insertion_point(class_scope:admission_control.SubmitTransactionResponse)
    ),
)
_sym_db.RegisterMessage(SubmitTransactionResponse)


_ADMISSIONCONTROL = _descriptor.ServiceDescriptor(
    name="AdmissionControl",
    full_name="admission_control.AdmissionControl",
    file=DESCRIPTOR,
    index=0,
    serialized_options=None,
    serialized_start=532,
    serialized_end=763,
    methods=[
        _descriptor.MethodDescriptor(
            name="SubmitTransaction",
            full_name="admission_control.AdmissionControl.SubmitTransaction",
            index=0,
            containing_service=None,
            input_type=_SUBMITTRANSACTIONREQUEST,
            output_type=_SUBMITTRANSACTIONRESPONSE,
            serialized_options=None,
        ),
        _descriptor.MethodDescriptor(
            name="UpdateToLatestLedger",
            full_name="admission_control.AdmissionControl.UpdateToLatestLedger",
            index=1,
            containing_service=None,
            input_type=get__with__proof__pb2._UPDATETOLATESTLEDGERREQUEST,
            output_type=get__with__proof__pb2._UPDATETOLATESTLEDGERRESPONSE,
            serialized_options=None,
        ),
    ],
)
_sym_db.RegisterServiceDescriptor(_ADMISSIONCONTROL)

DESCRIPTOR.services_by_name["AdmissionControl"] = _ADMISSIONCONTROL

# @@protoc_insertion_point(module_scope)
