
    NgK
                         d Z ddlZddlmZmZ ddlZdej        dee         dee         fdZ	 G d d	ej
                  Z G d
 dej
                  ZdS )z4GRPCAuthMetadataPlugins for standard authentication.    N)AnyOptionalcallbacktokenerrorc                 N    dd                     |          ff} | ||           d S )Nauthorizationz	Bearer {})format)r   r   r   metadatas       F/var/www/html/ai-engine/env/lib/python3.11/site-packages/grpc/_auth.py_sign_requestr      s7    
 !+"4"4U";";<>HHXu    c                   X    e Zd ZU dZeed<   eed<   defdZdej	        dej
        fdZd	S )
GoogleCallCredentialszEMetadata wrapper for GoogleCredentials from the oauth2client library._is_jwt_credentialscredentialsc                 ^    || _         dt          j        |j                  j        v | _        d S )Nadditional_claims)r   inspectgetfullargspecget_access_tokenargsr   )selfr   s     r   __init__zGoogleCallCredentials.__init__&   s4    '  %k&BCCHI 	r   contextr   c                    	 | j         r(| j                            d|j        i          j        }n| j                                        j        }t          ||d            d S # t          $ r}t          |d |           Y d }~d S d }~ww xY w)Naud)r   )r   r   r   service_urlaccess_tokenr   	Exception)r   r   r   r    	exceptions        r   __call__zGoogleCallCredentials.__call__/   s    
	8| Q#0AAw2'  B     	   $0AACCP (L$77777  	5 	5 	5(D)444444444	5s   AA" "
B,BBN)__name__
__module____qualname____doc__bool__annotations__r   r   grpcAuthMetadataContextAuthMetadataPluginCallbackr#    r   r   r   r      sx         OOMMM
C 
 
 
 
8)8 18 8 8 8 8 8r   r   c                   N    e Zd ZU dZeed<   defdZdej        dej	        fdZ
dS )	AccessTokenAuthMetadataPluginz2Metadata wrapper for raw access token credentials._access_tokenr    c                     || _         d S N)r0   )r   r    s     r   r   z&AccessTokenAuthMetadataPlugin.__init__H   s    )r   r   r   c                 2    t          || j        d            d S r2   )r   r0   )r   r   r   s      r   r#   z&AccessTokenAuthMetadataPlugin.__call__K   s    
 	h 2D99999r   N)r$   r%   r&   r'   strr)   r   r*   r+   r,   r#   r-   r   r   r/   r/   C   so         <<*S * * * *:): 1: : : : : :r   r/   )r'   r   typingr   r   r*   r,   r4   r!   r   AuthMetadataPluginr   r/   r-   r   r   <module>r7      s    ; :                  -C= I   !8 !8 !8 !8 !8D3 !8 !8 !8H: : : : :D$; : : : : :r   