
    $j                         d Z ddlZddlZddlZddlZddlmZmZ ddlZddl	Z	ddl
mZmZ ej        Z eh d          Z G d dej                  Z G d d	          ZdS )
z
    Hindsight HTTP API

    HTTP API for Hindsight

    The version of the OpenAPI document: 0.6.1
    Generated by OpenAPI Generator (https://openapi-generator.tech)

    Do not edit the class manually.
    N)OptionalUnion)ApiExceptionApiValueError>   GETPUTHEADTRACEDELETEOPTIONSc                   *    e Zd ZddZd Zd ZddZdS )	RESTResponsereturnNc                 R    || _         |j        | _        |j        | _        d | _        d S N)responsestatusreasondata)selfresps     a/home/rurouni/.hermes/hermes-agent/venv/lib/python3.11/site-packages/hindsight_client_api/rest.py__init__zRESTResponse.__init__    s&    kk			    c                 j   K   | j         $| j                                         d {V | _         | j         S r   )r   r   readr   s    r   r   zRESTResponse.read&   s=      9"m0022222222DIyr   c                     | j         j        S )z3Returns a CIMultiDictProxy of the response headers.)r   headersr   s    r   
getheaderszRESTResponse.getheaders+   s    }$$r   c                 B    | j         j                            ||          S )z Returns a given response header.)r   r   get)r   namedefaults      r   	getheaderzRESTResponse.getheader/   s    }$((w777r   r   Nr   )__name__
__module____qualname__r   r   r    r%    r   r   r   r      sZ             
% % %8 8 8 8 8 8r   r   c                       e Zd Zd	dZd	dZedej        fd            Zede	e
j                 fd            Zd Z	 	 	 	 d
dZdS )RESTClientObjectr   Nc                 `    || _         d | _        d | _        |j        | _        |j        | _        d S r   )_configuration_pool_manager_retry_clientproxyproxy_headers)r   configurations     r   r   zRESTClientObject.__init__6   s7     ,>BBF"(
*8r   c           	         | j         dS | j        }|j        }t          j        |j                  }|j        r!|                    |j        |j                   |j	        sd|_
        t          j        |_        t          j        ||          }t          j        |d          | _         |j        }|8t#          j        | j         t#          j        |dd	d
                    | _        dS dS )zBCreate aiohttp session lazily (must be called from async context).N)cafile)keyfileF)limitsslT)	connector	trust_envg       @g?g      ^@)attemptsfactorstart_timeoutmax_timeout)client_sessionretry_options)r/   r.   connection_pool_maxsizer8   create_default_contextssl_ca_cert	cert_fileload_cert_chainkey_file
verify_sslcheck_hostname	CERT_NONEverify_modeaiohttpTCPConnectorClientSessionretriesaiohttp_retryRetryClientExponentialRetryr0   )r   r3   maxsizessl_contextr9   rN   s         r   _ensure_sessionz RESTClientObject._ensure_sessionA   s/   )F+70 ,
 
 
 " 	'''1G (    ' 	4).K&&)mK#(
 
 
	
 %2
 
 

  '!.!:#1+<$"% %	  " " "D r   c                 8    |                                   | j        S )z-Get the pool manager, initializing if needed.)rT   r/   r   s    r   pool_managerzRESTClientObject.pool_managerk        	!!r   c                 8    |                                   | j        S )z-Get the retry client, initializing if needed.)rT   r0   r   s    r   retry_clientzRESTClientObject.retry_clientq   rW   r   c                    K   | j         | j                                          d {V  | j        !| j                                         d {V  d S d S r   )r/   closer0   r   s    r   r[   zRESTClientObject.closew   st      )$**,,,,,,,,,)$**,,,,,,,,,,, *)r   c                   K   |                                 }|dv sJ |r|rt          d          |pi }|pi }|pd}d|vrd|d<   ||||d}| j        r
| j        |d<   | j        r
| j        |d<   |d	v rt	          j        d
|d         t          j                  r|t          j        |          }||d<   nR|d         dk    rt          j
        |          |d<   n-|d         dk    r|d= t          j
                    }	|D ]}
|
\  }}t          |t                    r?t          |          dk    r,|	                    ||d         |d         |d                    [t          |t                    rt          j        |          }n$t          |t                     rt#          |          }|	                    ||           |	|d<   nCt          |t"                    st          |t$                    r||d<   nd}t'          d|          | j        |t*          v r| j        }n| j        } |j        di | d{V }t1          |          S )a  Execute request

        :param method: http request method
        :param url: http request url
        :param headers: http request headers
        :param body: request json body, for `application/json`
        :param post_params: request post parameters,
                            `application/x-www-form-urlencoded`
                            and `multipart/form-data`
        :param _request_timeout: timeout setting for this request. If one
                                 number provided, it will be total request
                                 timeout. It can also be a pair (tuple) of
                                 (connection, read) timeouts.
        )r   r	   r   POSTr   PATCHr   z9body parameter cannot be used with post_params parameter.i,  zContent-Typezapplication/json)methodurltimeoutr   r1   r2   )r]   r   r^   r   r   jsonNr   z!application/x-www-form-urlencodedzmultipart/form-data      r      )valuefilenamecontent_typezCannot prepare a request message for provided
                         arguments. Please check that your arguments match
                         declared content type.)r   r   r*   )upperr   r1   r2   research
IGNORECASErb   dumpsrK   FormData
isinstancetuplelen	add_fielddictintstrbytesr   rY   ALLOW_RETRY_METHODSrV   requestr   )r   r_   r`   r   bodypost_params_request_timeoutra   argsr   paramkvmsgrV   rs                   r   rx   zRESTClientObject.request}   s     .  
 
 
 
 
  	4 	K   "'R-R",f((&8GN# 	
 
 : 	' JDM 	7$($6D! BBBy!8"-HH '9#:d++D#V(,OOO&/<<V(,AAA N+'))( - -E DAq!!U++ -A!"#A$%&qT)*1	 '     &a.. ' $
1AA'3// ' #AAq!,,,,#V
 D#&& 9*T5*A*A 9#V3 #!C8888 (V7J-J-J,LL,L&,&..........Ar   r&   )NNNN)r'   r(   r)   r   rT   propertyrK   rM   rV   r   rO   rP   rY   r[   rx   r*   r   r   r,   r,   4   s        	9 	9 	9 	9( ( ( (T "g3 " " " X"
 "h}'@A " " " X"
- - - n n n n n nr   r,   )__doc__iorb   rj   r8   typingr   r   rK   rO   hindsight_client_api.exceptionsr   r   ClientResponseRESTResponseType	frozensetrw   IOBaser   r,   r*   r   r   <module>r      s  	 	 
			  				 



 " " " " " " " "      G G G G G G G G) i T T TUU 8 8 8 8 829 8 8 8,w w w w w w w w w wr   