
    :?h"                        % S r SSKJr  SSKJrJrJrJr  SSK	J
r
  SSKJrJrJr   " S S\5      r " S	 S
\5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      rS\S\4S jrS\S \S\\\4   4S! jrS\S \S\\\4   4S" jr S?S$\S%\\    S&\\    S\4S' jjr!S(\S\4S) jr"0 S*\_S+\_S,\_S-\_S.\_S/\_S0\_S1\_S2\_S3\_S4\_S5\_S6\_S7\_S8\_S9\_S:\_\\\\\\\\\\\\\\S;.Er#\\ \4   \$S<'   \\\\\\\S=.r%\\\4   \$S>'   g#)@zHImplementation of the Python Database API Specification v2.0 exceptions.    )unpack)DictOptionalTupleUnion   )get_client_error)ErrorClassTypes
ErrorTypes
StrOrBytesc                      ^  \ rS rSrSr    SS\\   S\\   S\\\	\\4   S4      S\\   S	S4
U 4S
 jjjr
S	\4S jrSrU =r$ )Error&   z<Exception that is base class for all other error exceptions.Nmsgerrnovalues.sqlstatereturnc                   > [         TU ]  5         Xl        U R                  U l        U=(       d    SU l        X@l        U R                  (       dN  SU R                  s=::  a  S:  a7  O  O4[        U R                  5      U l        Ub   U R                  U-  U l        O OU R                  (       d  S=U l        U l        U R                  (       ae  U R                  S:w  aU  U R                  U R                  S.nU R
                  (       a  SnU R
                  US	'   OS
nUR                  " S0 UD6U l        U R                  U R                  U R
                  4U l	        g ! [         a!  nU R                   SU S3U l         S nANS nAff = f)Ni  i  z (Warning: )zUnknown error)r   r   z{errno} ({state}): {msg}statez{errno}: {msg} )
super__init__r   	_full_msgr   r   r	   	TypeErrorformatargs)	selfr   r   r   r   errfieldsfmt	__class__s	           U/var/www/ev-aguas/ev-aguas-proceso/venv/lib/python3.13/site-packages/mysqlx/errors.pyr   Error.__init__)   s)    	[b
 xxTTZZ6$6'

3DH!>#xx&0DH "
 (77DNTX88

b(#zz$((;F}}0"&--w& ZZ1&1DNZZ?	 ! >"&((;se1=DHH>s   E 
F$F  Fc                     U R                   $ )N)r   )r    s    r%   __str__Error.__str__K   s    ~~    )r   r   r   r   r   )NNNN)__name__
__module____qualname____firstlineno____doc__r   strintr   r   r   r(   __static_attributes____classcell__)r$   s   @r%   r   r   &   s    F "#8<"& @c] @ } @ uS#X345	 @
 3- @ 
 @  @D  r*   r   c                       \ rS rSrSrSrg)InterfaceErrorO   z.Exception for errors related to the interface.r   Nr+   r,   r-   r.   r/   r2   r   r*   r%   r5   r5   O       8r*   r5   c                       \ rS rSrSrSrg)DatabaseErrorS   z-Exception for errors related to the database.r   Nr7   r   r*   r%   r:   r:   S   s    7r*   r:   c                       \ rS rSrSrSrg)InternalErrorW   z.Exception for errors internal database errors.r   Nr7   r   r*   r%   r=   r=   W   r8   r*   r=   c                       \ rS rSrSrSrg)OperationalError[   z9Exception for errors related to the database's operation.r   Nr7   r   r*   r%   r@   r@   [   s    Cr*   r@   c                       \ rS rSrSrSrg)ProgrammingError_   z(Exception for errors programming errors.r   Nr7   r   r*   r%   rC   rC   _   s    2r*   rC   c                       \ rS rSrSrSrg)IntegrityErrorc   z4Exception for errors regarding relational integrity.r   Nr7   r   r*   r%   rF   rF   c       >r*   rF   c                       \ rS rSrSrSrg)	DataErrorg   z<Exception for errors reporting problems with processed data.r   Nr7   r   r*   r%   rJ   rJ   g   s    Fr*   rJ   c                       \ rS rSrSrSrg)NotSupportedErrork   zCException for errors when an unsupported database feature was used.r   Nr7   r   r*   r%   rM   rM   k   s    Mr*   rM   c                       \ rS rSrSrSrg)	PoolErroro   z4Exception for errors relating to connection pooling.r   Nr7   r   r*   r%   rP   rP   o   rH   r*   rP   c                       \ rS rSrSrSrg)TimeoutErrors   z4Exception for errors relating to connection timeout.r   Nr7   r   r*   r%   rS   rS   s   rH   r*   rS   bufr   c                     [        U [        5      (       a  U $ [        U 5      nUS:X  a  U S   $ US::  a  U SSU-
  -  -   n[        SU5      S   $ U SSU-
  -  -   n[        SU5      S   $ )z'Unpacks the given buffer to an integer.r   r          z<I   z<Q)
isinstancer1   lenstruct_unpack)rU   lengthtmps      r%   intreadr_   w   s~    #s
XF{1v{Gq6z**T3'**
1v:&
&Cs#A&&r*   sizec                 *    [        U SU 5      nXS U4$ )zGRead an integer from buffer.

Returns a tuple (truncated buffer, int).
r   N)r_   rU   r`   ress      r%   read_intrd      s#    
 #a+
CJr*   c                     U SU nXS U4$ )z\Reads bytes from a buffer.

Returns a tuple with buffer less the read bytes, and the bytes.
r   Nr   rb   s      r%   
read_bytesrf      s    
 a+CJr*   Nr   r   r   c                      [         U    " XUS9$ ! [         a     Of = fU(       d	  [        XS9$  [        USS    " XUS9$ ! [         a    [        XUS9s $ f = f)zGet the exception matching the MySQL error.

This function will return an exception based on the SQLState. The given
message will be passed on in the returned exception.

Returns an Exception.
)r   r   r   )r   r   r      )_ERROR_EXCEPTIONSKeyErrorr:   _SQLSTATE_CLASS_EXCEPTION)r   r   r   s      r%   get_mysql_exceptionrl      s~     'CxPP  22F(!A78
 	
  FHEEFs    
A AApacketc                    S=p U S   S:w  a  [        S5      e Sn U SS n [        U S5      u  pU S	   S
:w  a/  [	        U [
        [        45      (       a  U R                  S5      OU nO4[        U SS S5      u  pUR                  S5      nU R                  S5      n [        XU5      $ ! [         a  n[        SU S35      s SnA$ SnAff = f! [        [         4 a  n[        SU S35      s SnA$ SnAff = f)zReturns an exception object based on the MySQL error.

Returns an exception object based on the MySQL error in the given
packet.

Returns an Error-Object.
NrW      zPacket is not an error packetz"Failed getting Error information (r      rh   r   #   utf8r   )

ValueError
IndexErrorr5   rd   rZ   bytes	bytearraydecoderf   rl   )rm   r   errmsgr!   r   s        r%   get_exceptionry      s"    EK!9<== 
 &*HK +!9? fui&899 f%   *&*a8Fv.H]]6*F uh77)  K B3%qIJJK$ 
# K B3%qIJJKsA   B( A
C (3C (
C2C CCC7C2,C72C70207080A21222324252627282A2B2C2D2E)333435373C3D3F404244HZXA0KHYrk   )i  i  i  i  i  i  i  ri   )NN)&r/   structr   r\   typingr   r   r   r   localesr	   typesr
   r   r   	Exceptionr   r5   r:   r=   r@   rC   rF   rJ   rM   rP   rS   ru   r1   r_   rd   rf   r0   rl   ry   rk   __annotations__ri   r   r*   r%   <module>r      s  : O * / / % : :&I &R9U 98E 89M 9D} D3} 3?] ?G GN N? ??5 ?' '3 '% s uUCZ'8 E  ue|)<  FJFFc]F5=c]FF8!8% !8J !8H 9) 9- 9 	
 9 	
	 9
 	) 9 	) 9 	. 9 	
 9 	
 9 	
 9 	
 9 	
 9 	
 9 	- 9 	
 9  	-! 9" 	-# 9$ 












? 9 4_ 45  F 





1 4_,- r*   