
    :Qg                         d Z ddlZddlZddlmZ ddlZ G d d      Z G d d      Z G d d	      Z G d
 de	      Z
 G d de	      ZdefdZddZy)zACode generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.    N)Listc                   N    e Zd ZU eed<   eed<   eed<   eed<   dedededefdZy)BackoffStrategyinitial_intervalmax_intervalexponentmax_elapsed_timec                 <    || _         || _        || _        || _        y N)r   r   r   r	   )selfr   r   r   r	   s        ^/var/www/html/answerous/venv/lib/python3.12/site-packages/unstructured_client/utils/retries.py__init__zBackoffStrategy.__init__   s!     0(  0    N)__name__
__module____qualname__int__annotations__floatr    r   r   r   r   
   s;    O1 1C 15 1dg 1r   r   c                   @    e Zd ZU eed<   eed<   eed<   dededefdZy)RetryConfigstrategybackoffretry_connection_errorsc                 .    || _         || _        || _        y r   )r   r   r   )r   r   r   r   s       r   r   zRetryConfig.__init__   s     '>$r   N)r   r   r   strr   r   boolr   r   r   r   r   r      s.    M!!? ? ?Y] ?r   r   c                   >    e Zd ZU eed<   ee   ed<   dedee   fdZy)Retriesconfigstatus_codesc                      || _         || _        y r   )r!   r"   )r   r!   r"   s      r   r   zRetries.__init__&   s    (r   N)r   r   r   r   r   r   r   r   r   r   r   r    r    "   s)    s)){ )$s) )r   r    c                   L    e Zd ZU ej                  ed<   dej                  fdZy)TemporaryErrorresponsec                     || _         y r   )r&   )r   r&   s     r   r   zTemporaryError.__init__.   s	     r   N)r   r   r   requestsResponser   r   r   r   r   r%   r%   +   s     !!2!2 !r   r%   c                   $    e Zd ZU eed<   defdZy)PermanentErrorinnerc                     || _         y r   )r,   )r   r,   s     r   r   zPermanentError.__init__5   s	    
r   N)r   r   r   	Exceptionr   r   r   r   r   r+   r+   2   s    i r   r+   retriesc                 `    j                   j                  dk(  r fd}t        |j                   j                  j                  j                   j                  j
                  j                   j                  j                  j                   j                  j                        S          S )Nr   c                  p   	         } j                   D ]p  }d|j                         v r7t        |d         }| j                  dz  }||k\  s8||dz   k  sAt	        |       t        |      }| j                  |k(  sgt	        |        	 | S # t
        j                  j                  $ r(}j                  j                  r t        |      |d }~wt
        j                  j                  $ r(}j                  j                  r t        |      |d }~wt        $ r  t        $ r}t        |      |d }~ww xY w)NXr   d      )r"   upperr   status_coder%   r(   
exceptionsConnectionErrorr!   r   r+   Timeoutr.   )rescode
code_rangestatus_majorparsed_code	exceptionfuncr/   s         r   
do_requestzretry.<locals>.do_request;   s!   ?f#00 6Ddjjl*%(a\
'*'<':5,VW:W"0"55&)$i??k9"0"5568 J &&66 ?>>99$Y/Y>&&.. ?>>99$Y/Y>!  ?$Y/Y>?sB   A
B B %B =B D5)#C D5,#DD5$D00D5)r!   r   retry_with_backoffr   r   r   r   r	   )r@   r/   rA   s   `` r   retryrC   9   s    ~~)+!	F "*gnn.D.D.U.UW^WeWeWmWmWzWz  }D  }K  }K  }S  }S  }\  }\  ^e  ^l  ^l  ^t  ^t  ^E  ^E  F  	F6Mr   c                    t        t        j                         dz        }d}	 	  |        S # t        $ r}|j                  d }~wt        $ r}t        t        j                         dz        }||z
  |kD  r"t        |t              r|j                  cY d }~S  |dz  ||z  z  t        j                  dd      z   }	t        |	|dz        }	t        j                  |	       |dz  }Y d }~nd }~ww xY w)Ni  r   r4   )roundtimer+   r,   r.   
isinstancer%   r&   randomuniformminsleep)
r@   r   r   r   r	   startr/   r?   nowrK   s
             r   rB   rB   c   s    $))+d"#EG
	6M 	"//! 			D()CU{--i8$---&t+w&')/1)=>E|d23EJJuqLG	 s.   , 	C,AC,AC'C,AC''C,)i  i`  g      ?i6 )__doc__rH   rF   typingr   r(   r   r   r    r.   r%   r+   rC   rB   r   r   r   <module>rP      s\    G    
1 
1? ?) )!Y !Y ' 'Tr   