o
    i                     @   s   d Z ddlZddlZddlmZ ddlmZ ddlm	Z	 ej
jd jZG dd de	Zd	Zejd d
krUejd dkrUddlmZ ddlmZ dddZee_ g dZdS dddZee_ g dZdS )z7Reference implementation for reflection in gRPC Python.    N)reflection_pb2)reflection_pb2_grpc)BaseReflectionServicerServerReflectionc                   @   s   e Zd ZdZdd ZdS )ReflectionServicerz,Servicer handling RPCs for service statuses.c                 c   s    |D ]c}| dr| ||jV  q| dr!| ||jV  q| dr3| ||jj|jjV  q| drA| 	||j
V  q| drM| |V  qtjtjtjjjd tjjjd  d|d	V  qd S )
Nfile_by_filenamefile_containing_symbolfile_containing_extensionall_extension_numbers_of_typelist_servicesr      )
error_codeerror_message)error_responseoriginal_request)HasField_file_by_filenamer   _file_containing_symbolr   _file_containing_extensionr	   containing_typeextension_number_all_extension_numbers_of_typer
   _list_services_reflection_pb2ServerReflectionResponseErrorResponsegrpc
StatusCodeINVALID_ARGUMENTvalueencode)selfrequest_iteratorcontextrequest r%   _/home/ubuntu/veenaModal/venv/lib/python3.10/site-packages/grpc_reflection/v1alpha/reflection.pyServerReflectionInfo   s>   





z'ReflectionServicer.ServerReflectionInfoN)__name__
__module____qualname____doc__r'   r%   r%   r%   r&   r      s    r   a  Enables server reflection on a server.

Args:
    service_names: Iterable of fully-qualified service names available.
    server: grpc.Server to which reflection service will be added.
    pool: DescriptorPool object to use (descriptor_pool.Default() if None).
   r      )aio)_asyncc                 C   s>   t |tjrttj| |d| d S tt| |d| d S N)pool)
isinstancegrpc_aioServer_reflection_pb2_grpc&add_ServerReflectionServicer_to_serverr.   r   service_namesserverr1   r%   r%   r&   enable_server_reflectionP   s   r:   )SERVICE_NAMEr   r.   r:   c                 C   s   t t| |d| d S r0   )r5   r6   r   r7   r%   r%   r&   r:   d   s   )r;   r   r:   )N)r+   sysr   grpc_reflection.v1alphar   r   r   r5   grpc_reflection.v1alpha._baser   
DESCRIPTORservices_by_name	full_namer;   r   _enable_server_reflection_docversion_infogrpc.experimentalr.   r3    r/   r:   __all__r%   r%   r%   r&   <module>   s,   $


