o
    i+                     @   s   d dl mZ d dlmZ d dlmZmZmZmZm	Z	m
Z
mZmZmZ ddlmZ defddZdd
dZdddZdddZd	S )    )Configuration)Pipeline)	ContentDecodePolicyCustomHookPolicyDistributedTracingPolicyHeadersPolicyNetworkTraceLoggingPolicyProxyPolicyRetryPolicyUserAgentPolicyHttpLoggingPolicy   )
USER_AGENTreturnc                  K   sv   t di | }tdi | |_tdi | |_tdi | |_tdi | |_t	di | |_
tddti| |_|S )zConfiguration common to a/sync pipelines.

    :return: A configuration object.
    :rtype: ~azure.core.configuration.Configuration
    Zbase_user_agentN )r   r   custom_hook_policyr   headers_policyr   http_logging_policyr   logging_policyr	   proxy_policyr   r   user_agent_policy)kwargsconfigr   r   X/home/app/Keep/.python/lib/python3.10/site-packages/azure/identity/_internal/pipeline.py_get_config   s   r   Nc                 K   sT   | j | j| jtdi || jg}|r|| || j| jtdi || j	g |S )Nr   )
r   r   r   r   retry_policyextendr   r   r   r   )r   Z_per_retry_policiesr   policiesr   r   r   _get_policies'   s    
	r   c                 K   sz   |s(t di |}|dd }|r|di |ntdi ||_t|fi |}| s7ddlm} |di |} t| |dS )Nretry_policy_classr   )RequestsTransportr   r   )r   popr
   r   r   azure.core.pipeline.transportr    r   )	transportr   r   r   r   r    r   r   r   build_pipeline?   s   "r%   c                 K   s   ddl m} |s4ddlm} tdi |}|dd }|r$|di |n|di ||_t|fi |}| sCddlm	} |di |} || |dS )Nr   )AsyncPipeline)AsyncRetryPolicyr   )AioHttpTransportr!   r   )
azure.core.pipeliner&   azure.core.pipeline.policiesr'   r   r"   r   r   r#   r(   )r$   r   r   r&   r'   r   r   r(   r   r   r   build_async_pipelineO   s   "r+   )N)NN)Zazure.core.configurationr   r)   r   r*   r   r   r   r   r   r	   r
   r   r   
user_agentr   r   r   r%   r+   r   r   r   r   <module>   s   ,

