
    g5                     T    d dl Z d dlZd dlZd dlmZ d dlmZ d dlmZ  G d d      Z	y)    N)PoolManager)	HTTPError)GeneralErrorc                   ,    e Zd ZdZd Zed        Zd Zy)
HttpClient<   c                 T    d | _         |j                  d| j                        | _        y )Ntimeout)_http_client_instancegetDEFAULT_HTTP_TIMEOUTr
   )selfoptionss     +/opt/Tautulli/lib/cloudinary/http_client.py__init__zHttpClient.__init__   s"    %)"{{9d.G.GH    c                 z    | j                   $t        dt        j                               | _         | j                   S )NCERT_REQUIRED)	cert_reqsca_certs)r   r   certifiwhere)r   s    r   _http_clientzHttpClient._http_client   s3    %%-)4Y`YfYfYh)iD&)))r   c                 8   	 | j                   j                  d|| j                        }|j                  }|j                  dk7  r/t        dj                  |j                  |j                              	 t        j                  |j                  d            }|S # t        $ r}t        dt        |      z        d }~wt        j                  $ r}t        dt        |      z        d }~ww xY w# t        $ r }t        d|j                  ||fz        d }~ww xY w)	NGET)methodurlr
   zUnexpected error %szSocket Error: %s   z0Server returned unexpected status code - {} - {}zutf-8z1Error parsing server response (%d) - %s. Got - %s)r   requestr
   datar   r   strsocketerrorstatusformatjsonloadsdecode	Exception)r   r   responsebodyeresults         r   get_jsonzHttpClient.get_json   s   	<((003PTP\P\0]H==D ??c!QXXYaYhYhYaYfYf h i i	qZZG 45F
   	?4s1v=>>|| 	<1CF:;;	<  	qRV^VeVegkmnUoopp	qs;   4B 5$C0 	C-$B;;C-C((C-0	D9DDN)__name__
__module____qualname__r   r   propertyr   r.    r   r   r   r      s'    I
 * *
r   r   )
r&   r"   r   urllib3r   urllib3.exceptionsr   cloudinary.exceptionsr   r   r3   r   r   <module>r7      s!        ( .   r   