
    lh6                         d dl Z d dlmZ d dlmZ d dlmZ d dlmZ erd dlm	Z	m
Z
mZmZmZ 	 d dlZd dlmZmZ d dlmZ d d	lmZ d d
lmZ  G d dej0                  ej2                        Zy# e$ r	  ed      w xY w)    N)OP)DidNotEnable)SPAN_ORIGIN)TYPE_CHECKING)AnyCallableIteratorIterableUnion)ClientCallDetailsCall)_UnaryOutcome)UnaryStreamCall)Messagezgrpcio is not installedc                   ,    e Zd ZdZd Zd Zed        Zy)ClientInterceptorFc                 t   |j                   }t        j                  t        j                  d|z  t
              5 }|j                  dd       |j                  d|       | j                  |      } |||      }|j                  d|j                         j                         |cd d d        S # 1 sw Y   y xY w)Nzunary unary call to %sopnameorigintypezunary unarymethodcode)
r   
sentry_sdk
start_spanr   GRPC_CLIENTr   set_data/_update_client_call_details_metadata_from_scoper   r   selfcontinuationclient_call_detailsrequestr   spanresponses          u/var/www/pru.catia.catastroantioquia-mas.com/tasa/lib/python3.12/site-packages/sentry_sdk/integrations/grpc/client.pyintercept_unary_unaryz'ClientInterceptor.intercept_unary_unary   s    $++""~~)F2
 	 MM&-0MM(F+"&"V"V## $$7AHMM&(--/"6"67	 	 	s   A*B..B7c                     |j                   }t        j                  t        j                  d|z  t
              5 }|j                  dd       |j                  d|       | j                  |      } |||      }|cd d d        S # 1 sw Y   y xY w)Nzunary stream call to %sr   r   zunary streamr   )r   r   r   r   r   r   r   r   r    s          r'   intercept_unary_streamz(ClientInterceptor.intercept_unary_stream/   s    $++""~~*V3
 	 MM&.1MM(F+"&"V"V## $#WH %	 	 	s   A BBc                 t   | j                   rt        | j                         ng }t        j                         j	                         D ]  \  }}|j                  ||f        t        j                  j                  | j                  | j                  || j                  | j                  | j                        } | S )N)r   timeoutmetadatacredentialswait_for_readycompression)r-   listr   get_current_scopeiter_trace_propagation_headersappendgrpc_interceptor_ClientCallDetailsr   r,   r.   r/   r0   )r#   r-   keyvalues       r'   r   zAClientInterceptor._update_client_call_details_metadata_from_scopeG   s     3F2N2ND$--.TV 	 ))+JJL	* 
OOS%L)		* #//BB&--'//+77.==+77 C 
 #"    N)__name__
__module____qualname___is_interceptedr(   r*   staticmethodr    r:   r'   r   r      s'     O*0 # #r:   r   )r   sentry_sdk.constsr   sentry_sdk.integrationsr   #sentry_sdk.integrations.grpc.constsr   typingr   r   r   r	   r
   r   r5   r   r   grpc._interceptorr   grpc.aio._interceptorr   google.protobuf.messager   ImportErrorUnaryUnaryClientInterceptorUnaryStreamClientInterceptorr   r@   r:   r'   <module>rK      sk       0 ;  ??2,/5/
G#$$d&G&GG#	  2
0
112s   A- -A;