U kf@sddlmZddlZddlZddlmZddlmZejr^ddlmZddl m Z ddl m Z Gd d d ej Z Gd d d e ZGd dde ZdS)) annotationsN)Any)ClassVar) Connection)DBAPIConnection)Dialectc@seZdZUdZdZdZded<ejdddd d d Z ejddd dd ddZ dddd ddddZ ejddd d ddZ dddd dddZ dS)ConnectionCharacteristicaAn 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 FClassVar[bool] transactionalrrNonedialect dbapi_connreturncCsdS)zNReset the characteristic on the DBAPI connection to its default value.Nr selfrrr r Q/opt/hc_python/lib64/python3.8/site-packages/sqlalchemy/engine/characteristics.pyreset_characteristic,sz-ConnectionCharacteristic.reset_characteristicrrrvaluercCsdS)zzJLoggingTokenCharacteristic.set_connection_characteristic..)Z_message_formatterrr r0rrsz8LoggingTokenCharacteristic.set_connection_characteristiccCs tdSr+r-rr r rrsz-LoggingTokenCharacteristic.get_characteristicrcCs|jddS)NZ logging_token)Z_execution_optionsgetr r r rr!sz8LoggingTokenCharacteristic.get_connection_characteristicN) r"r#r$r%r r'rrrrr!r r r rr,ts   r,) __future__rr(typingrr TYPE_CHECKINGbaserZ interfacesrrABCr r*r,r r r rs      K