
    tnii                         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 n# e$ r  ed          w xY w G d dej        ej                  ZdS )    N)OP)DidNotEnable)SPAN_ORIGIN)TYPE_CHECKING)AnyCallableIteratorIterableUnion)ClientCallDetailsCall)_UnaryOutcome)UnaryStreamCall)Messagezgrpcio is not installedc                   j    e Zd ZdZ	 	 	 	 	 	 	 	 	 	 ddZ	 	 	 	 	 	 	 	 	 	 ddZe	 	 	 	 dd            ZdS )ClientInterceptorFselfcontinuation5Callable[[ClientCallDetails, Message], _UnaryOutcome]client_call_detailsr   requestr   returnr   c                    |j         }t          j        t          j        d|z  t
                    5 }|                    dd           |                    d|           |                     |          } |||          }|                    d|                                j	                   |cd d d            S # 1 swxY w Y   d S )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   r   r   r   r   r   spanresponses          `/var/www/html/gpu-tools/venv/lib/python3.11/site-packages/sentry_sdk/integrations/grpc/client.pyintercept_unary_unaryz'ClientInterceptor.intercept_unary_unary   s    %+"~)F2
 
 
 	 MM&-000MM(F+++"&"V"V## # $|$7AAHMM&(--//"6777	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s   A<B::B>B>MCallable[[ClientCallDetails, Message], Union[Iterable[Any], UnaryStreamCall]]Union[Iterator[Message], Call]c                 4   |j         }t          j        t          j        d|z  t
                    5 }|                    dd           |                    d|           |                     |          } |||          }|cd d d            S # 1 swxY w Y   d S )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_stream4   s     %+"~*V3
 
 
 	 MM&.111MM(F+++"&"V"V## # +7,7JG*T*TH !	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s   ABBBc                 @   | j         rt          | j                   ng }t          j                                                    D ]\  }}|                    ||f           t          j                            | j	        | j
        || j        | j        | j                  } | S )N)r   timeoutmetadatacredentialswait_for_readycompression)r1   listr!   get_current_scopeiter_trace_propagation_headersappendgrpc_interceptor_ClientCallDetailsr   r0   r2   r3   r4   )r   r1   keyvalues       r)   r%   zAClientInterceptor._update_client_call_details_metadata_from_scopeN   s    
 3F2NVD$-...TV 	 )++JJLL	* 	* 
OOS%L))))"/BB&-'/+7.=+7 C 
 
 #"    N)
r   r   r   r   r   r   r   r   r   r   )
r   r   r   r+   r   r   r   r   r   r,   )r   r   r   r   )__name__
__module____qualname___is_interceptedr*   r.   staticmethodr%    r>   r)   r   r      s         O!M 1 	
 
   2!e 1 	
 
*   4 #0#	# # # \# # #r>   r   )r!   sentry_sdk.constsr   sentry_sdk.integrationsr   #sentry_sdk.integrations.grpc.constsr   typingr   r   r   r	   r
   r   r9   r   r   grpc._interceptorr   grpc.aio._interceptorr   google.protobuf.messager   ImportErrorUnaryUnaryClientInterceptorUnaryStreamClientInterceptorr   rD   r>   r)   <module>rO      s_                   0 0 0 0 0 0 ; ; ; ; ; ;             @??????????????2KKK,,,,,,,,//////555555/////// 2 2 2
,0
1
112O# O# O# O# O#$%O# O# O# O# O#s   A A