+
    i8                        ^ RI Ht ^ RIt^ RIt^ RIHt ^ RIHt ]P                  '       d   ^RIHt ^RI	H
t
 ^RI	Ht  ! R R	]P                  4      t ! R
 R]4      t ! R R]4      tR# )    )annotationsN)Any)ClassVar)
Connection)DBAPIConnection)Dialectc                      ] tR t^t$ RtRtRtR]R&   ]P                  R R l4       t
]P                  R R l4       tR	 R
 lt]P                  R R l4       tR R ltRtR# )ConnectionCharacteristica  An abstract base for an object that can set, get and reset a
per-connection characteristic, typically one that gets reset when the
connection is returned to the connection pool.

transaction isolation is the canonical example, and the
``IsolationLevelCharacteristic`` implementation provides this for the
``DefaultDialect``.

The ``ConnectionCharacteristic`` class should call upon the ``Dialect`` for
the implementation of each method.   The object exists strictly to serve as
a dialect visitor that can be placed into the
``DefaultDialect.connection_characteristics`` dictionary where it will take
effect for calls to :meth:`_engine.Connection.execution_options` and
related APIs.

.. versionadded:: 1.4

FClassVar[bool]transactionalc               $    V ^8  d   QhRRRRRR/#    dialectr   
dbapi_connr   returnNone )formats   "ڊC:\Users\petid\OneDrive\Desktop\Maestro\MAESTRO CLAUDE\MAESTRO\maestro-backend\venv\Lib\site-packages\sqlalchemy\engine\characteristics.py__annotate__%ConnectionCharacteristic.__annotate__-   s$      ,;	    c                    R# )zFReset the characteristic on the DBAPI connection to its default
value.Nr   selfr   r   s   &&&r   reset_characteristic-ConnectionCharacteristic.reset_characteristic,       r   c               (    V ^8  d   QhRRRRRRRR/# 	r   r   r   r   r   valuer   r   r   r   )r   s   "r   r   r   4   s2     K KK,;KDGK	Kr   c                    R# )z<set characteristic on the DBAPI connection to a given value.Nr   r   r   r   r"   s   &&&&r   set_characteristic+ConnectionCharacteristic.set_characteristic3   r   r   c          
     ,    V ^8  d   QhRRRRRRRRR	R
/# r   r   r   connr   r   r   r"   r   r   r   r   )r   s   "r   r   r   9   s<     < << < $	<
 < 
<r   c                *    V P                  WV4       R# )zset characteristic on the :class:`_engine.Connection` to a given
value.

.. versionadded:: 2.0.30 - added to support elements that are local
   to the :class:`_engine.Connection` itself.

N)r%   r   r   r)   r   r"   s   &&&&&r   set_connection_characteristic6ConnectionCharacteristic.set_connection_characteristic9   s     	U;r   c               $    V ^8  d   QhRRRRRR/# r   r   r   r   r   r   r   r   )r   s   "r   r   r   J   s$      ,;	r   c                    R# )zHGiven a DBAPI connection, get the current value of the
characteristic.

Nr   r   s   &&&r   get_characteristic+ConnectionCharacteristic.get_characteristicI   r   r   c               (    V ^8  d   QhRRRRRRRR/# 	r   r   r   r)   r   r   r   r   r   r   )r   s   "r   r   r   R   s,     
< 
<
<&0
<>M
<	
<r   c                $    V P                  W4      # )zGiven a :class:`_engine.Connection`, get the current value of the
characteristic.

.. versionadded:: 2.0.30 - added to support elements that are local
   to the :class:`_engine.Connection` itself.

)r1   r   r   r)   r   s   &&&&r   get_connection_characteristic6ConnectionCharacteristic.get_connection_characteristicR   s     &&w;;r   r   N)__name__
__module____qualname____firstlineno____doc__	__slots__r   __annotations__abcabstractmethodr   r%   r,   r1   r7   __static_attributes__r   r   r   r
   r
      su    & I$)M>)  	K K
<  	 
< 
<r   r
   c                  N    ] tR t^_t$ RtRtR]R&   R R ltR R ltR	 R
 lt	Rt
R# )IsolationLevelCharacteristicz0Manage the isolation level on a DBAPI connectionTr   r   c               $    V ^8  d   QhRRRRRR/# r   r   )r   s   "r   r   )IsolationLevelCharacteristic.__annotate__d   s$     2 22,;2	2r   c                	(    VP                  V4       R # N)reset_isolation_levelr   s   &&&r   r   1IsolationLevelCharacteristic.reset_characteristicd   s     	%%j1r   c               (    V ^8  d   QhRRRRRRRR/# r!   r   )r   s   "r   r   rF   i   s2     C CC,;CDGC	Cr   c                	(    VP                  W#4       R # rH   )_assert_and_set_isolation_levelr$   s   &&&&r   r%   /IsolationLevelCharacteristic.set_characteristici   s     	//
Br   c               $    V ^8  d   QhRRRRRR/# r/   r   )r   s   "r   r   rF   n   s$     7 77,;7	7r   c                	$    VP                  V4      # rH   )get_isolation_levelr   s   &&&r   r1   /IsolationLevelCharacteristic.get_characteristicn   s     **:66r   r   N)r9   r:   r;   r<   r=   r   r?   r   r%   r1   rB   r   r   r   rD   rD   _   s$    :$(M>(2
C
7 7r   rD   c                  f    ] tR t^tt$ RtRtR]R&   R R ltR R ltR	 R
 lt	R R lt
R R ltRtR# )LoggingTokenCharacteristicz_Manage the 'logging_token' option of a :class:`_engine.Connection`.

.. versionadded:: 2.0.30

Fr   r   c               $    V ^8  d   QhRRRRRR/# r   r   )r   s   "r   r   'LoggingTokenCharacteristic.__annotate__}   s$      ,;	r   c                	    R # rH   r   r   s   &&&r   r   /LoggingTokenCharacteristic.reset_characteristic}   s     	r   c               (    V ^8  d   QhRRRRRRRR/# r!   r   )r   s   "r   r   rV      s,     $ $$,;$DG$	$r   c                	    \        4       hrH   NotImplementedErrorr$   s   &&&&r   r%   -LoggingTokenCharacteristic.set_characteristic        "##r   c          
     ,    V ^8  d   QhRRRRRRRRR	R
/# r(   r   )r   s   "r   r   rV      s<     
( 
(
( 
( $	
(
 
( 

(r   c                	6   a S'       d   V3R  lVn         R# V= R# )c                   < R S: RV : 2# )[z] r   )msgr"   s   &r   <lambda>JLoggingTokenCharacteristic.set_connection_characteristic.<locals>.<lambda>   s
    uc2Jr   N)_message_formatterr+   s   &&&&fr   r,   8LoggingTokenCharacteristic.set_connection_characteristic   s     &JD#'r   c               $    V ^8  d   QhRRRRRR/# r/   r   )r   s   "r   r   rV      s$     $ $$,;$	$r   c                	    \        4       hrH   r[   r   s   &&&r   r1   -LoggingTokenCharacteristic.get_characteristic   r^   r   c               (    V ^8  d   QhRRRRRRRR/# r4   r   )r   s   "r   r   rV      s2     B BB&0B>MB	Br   c                	:    VP                   P                  R R4      # )logging_tokenN)_execution_optionsgetr6   s   &&&&r   r7   8LoggingTokenCharacteristic.get_connection_characteristic   s     &&**?DAAr   r   N)r9   r:   r;   r<   r=   r   r?   r   r%   r,   r1   r7   rB   r   r   r   rT   rT   t   s3     %*M>)
$

($
B Br   rT   )
__future__r   r@   typingr   r   TYPE_CHECKINGbaser   
interfacesr   r   ABCr
   rD   rT   r   r   r   <module>rw      sZ    # 
   	 +#H<sww H<V7#; 7*'B!9 'Br   