
    \j"                     b    d dl mZ d dlZd dlmZ d dlZdedefdZd Z	d Z
 G d	 d
      Zd Zy)    )VERSIONN)environapplicationreturnc                     g }| j                  dd      }| j                  dd      }|r|j                  d|z         |r|j                  d|z         dj                  |      S )Nid versionzapplication-id/%szapplication-version/%s )getappendjoin)r   partsr   r
   s       </root/env/lib/python3.12/site-packages/ldclient/impl/http.py_application_header_valuer      s_    E	r	"Booi,G	(2-.-7888E?    c                 x   | j                   xs ddt        z   d}t        | j                        }|r||d<   t	        | j
                  t              ri| j
                  dk7  rZd}t	        | j                  t              r| j                  dk7  rd| j                  z   }|j                  d| j
                  |z   i       |S )Nr	   zPythonClient/)Authorizationz
User-AgentzX-LaunchDarkly-Tags/zX-LaunchDarkly-Wrapper)	sdk_keyr   r   r   
isinstancewrapper_namestrwrapper_versionupdate)configheaders	app_valuer   s       r   _base_headersr      s     & 4",w68G *&*<*<=I)2%&&%%s+0C0Cr0If,,c2v7M7MQS7S!F$:$::O0&2E2E2WXYNr   c                 @    t        t        |       | j                        S N)HTTPFactoryr   http)r   s    r   _http_factoryr$   $   s    }V,fkk::r   c                   J    e Zd ZddZed        Zed        Zed        Zd Zy)r"   Nc                     || _         || _        t        j                  |j                  ||j
                  n|      | _        y )N)connectread)_HTTPFactory__base_headers_HTTPFactory__http_configurllib3Timeoutconnect_timeoutread_timeout_HTTPFactory__timeout)selfbase_headershttp_configoverride_read_timeouts       r   __init__zHTTPFactory.__init__(   s<    *( //-B-J))Pe
r   c                     | j                   S r!   )r)   r0   s    r   r1   zHTTPFactory.base_headers0   s    """r   c                     | j                   S r!   )r*   r6   s    r   r2   zHTTPFactory.http_config4   s    !!!r   c                     | j                   S r!   )r/   r6   s    r   timeoutzHTTPFactory.timeout8   s    ~~r   c                    | j                   j                  xs t        |      }| j                   j                  rd}d }n.d}| j                   j                  xs t        j                         }|t        j                  |||      S t        j                  j                  |      }d }|j                  d k7  r*t        j                  j                  |j                        }t        j                  |||||      S )N	CERT_NONECERT_REQUIRED)	num_pools	cert_reqsca_certs)proxy_basic_auth)r=   r>   r?   proxy_headers)r*   
http_proxy_get_proxy_urldisable_ssl_verificationr?   certifiwherer+   PoolManagerutil	parse_urlauthmake_headersProxyManager)r0   r=   target_base_uri	proxy_urlr>   r?   urlrA   s           r   create_pool_managerzHTTPFactory.create_pool_manager<   s    &&11T^O5T	66#IH'I))22EgmmoH&&##!  ,,((3C Mxx4 ' 9 9388 9 T''###+ r   r!   )	__name__
__module____qualname__r4   propertyr1   r2   r9   rP    r   r   r"   r"   '   sH    
 # # " "  r   r"   c                     | y | j                  d      }|rt        j                  d      S t        j                  d      S )Nzhttps:https_proxyrB   )
startswithr   r   )rM   is_httpss     r   rC   rC   [   s<    ))(3H{{=));;|$$r   )ldclient.versionr   rE   osr   r+   dictr   r   r   r$   r"   rC   rU   r   r   <module>r]      s>    $   4 C  ;2 2h%r   