
    j                         d dl Z d dlmZmZmZmZ d dlmZ d dlm	Z	 d dl
mZ ddlmZ ddlmZ dd	lmZ  G d
 de      Zy)    N)IterableUnionOptionalAny)AccessTokenInfo)Pipeline)HttpRequest   )AadClientBase)AadClientCertificatebuild_pipelinec                      e Zd ZddZd ZddZ	 ddee   deded	ee   d
e	de
fdZdee   ded
e	de
fdZdee   ded
e	de
fdZdee   ded
e	de
fdZdee   ded
e	de
fdZdee   deeef   ded
e	de
f
dZd
e	defdZded
e	de
fdZy)	AadClientreturnc                 :    | j                   j                          | S N)	_pipeline	__enter__selfs    d/root/aria/tools/markitdown-venv/lib/python3.12/site-packages/azure/identity/_internal/aad_client.pyr   zAadClient.__enter__   s      "    c                 6     | j                   j                  |  y r   )r   __exit__)r   argss     r   r   zAadClient.__exit__   s    &r   Nc                 $    | j                          y r   )r   r   s    r   closezAadClient.close   s    r   scopescoderedirect_uriclient_secretkwargsc                 V     | j                   d||||d|} | j                  |fi |S )N)r   r    r!   r"    )_get_auth_code_request_run_pipeline)r   r   r    r!   r"   r#   requests          r   "obtain_token_by_authorization_codez,AadClient.obtain_token_by_authorization_code   sF     .$-- 
<}
`f
 "t!!'4V44r   certificatec                 P     | j                   ||fi |} | j                  |fi |S r   )_get_client_certificate_requestr'   )r   r   r*   r#   r(   s        r   "obtain_token_by_client_certificatez,AadClient.obtain_token_by_client_certificate$   s5     7$66v{UfU!t!!'4V44r   secretc                 P     | j                   ||fi |} | j                  |fi |S r   )_get_client_secret_requestr'   )r   r   r.   r#   r(   s        r   obtain_token_by_client_secretz'AadClient.obtain_token_by_client_secret*   s3    1$11&&KFK!t!!'4V44r   	assertionc                 P     | j                   ||fi |} | j                  |fi |S r   )_get_jwt_assertion_requestr'   )r   r   r2   r#   r(   s        r   obtain_token_by_jwt_assertionz'AadClient.obtain_token_by_jwt_assertion.   s3    1$11&)NvN!t!!'4V44r   refresh_tokenc                 P     | j                   ||fi |} | j                  |fi |S r   )_get_refresh_token_requestr'   )r   r   r6   r#   r(   s        r   obtain_token_by_refresh_tokenz'AadClient.obtain_token_by_refresh_token2   s5     2$11&-R6R!t!!'4V44r   client_credentialuser_assertionc                     t               r   )NotImplementedError)r   r   r:   r;   r#   s        r   obtain_token_on_behalf_ofz#AadClient.obtain_token_on_behalf_of8   s     "##r   c                     t        di |S )Nr%   r   )r   r#   s     r   _build_pipelinezAadClient._build_pipelineB   s    '''r   r(   c                 J   |j                  dd        |j                  dd        |j                  dd        |j                  dd      }t        t        j                               } | j                  j                  |fd| j
                  i|} | j                  ||fd|i|S )N	tenant_idclaimsr"   
enable_caeFretry_on_methods)popinttimer   run_POST_process_response)r   r(   r#   rD   nowresponses         r   r'   zAadClient._run_pipelineE   s     	

;%

8T"

?D)ZZe4
$))+%4>>%%gU

UfU%t%%hU
UfUUr   )r   r   )r   Nr   )__name__
__module____qualname__r   r   r   r   strr   r   r   r)   r   r-   r1   r5   r9   r   r>   r   r@   r	   r'   r%   r   r   r   r      sl   ' cg5sm5+.5>A5RZ[^R_5ru5	55sm52F5RU5	55HSM 53 5Z] 5bq 55HSM 5c 5]` 5et 55sm5475CF5	5$$ !&:!:;$ 	$
 $ 
$( ( (	V[ 	VC 	VO 	Vr   r   )rH   typingr   r   r   r   azure.core.credentialsr   azure.core.pipeliner   azure.core.restr	   aad_client_baser   aadclient_certificater   pipeliner   r   r%   r   r   <module>rY      s0   
  1 1 2 ( ' * 7 $>V >Vr   