§
    dŠtj^	  ã                   ób   — d dl mZ  G d„ d¦  «        Z G d„ d¦  «        Z G d„ de¦  «        ZdS )	é    )Údequec                   ó2   — e Zd ZdZd„ Zd„ Zd„ Zd„ Zd	d„ZdS )
ÚTransactiona  Filesystem transaction write context

    Gathers files for deferred commit or discard, so that several write
    operations can be finalized semi-atomically. This works by having this
    instance as the ``.transaction`` attribute of the given filesystem
    c                 ó:   — || _         t          ¦   «         | _        dS )úO
        Parameters
        ----------
        fs: FileSystem instance
        N)Úfsr   Úfiles)Úselfr   Úkwargss      úP/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/fsspec/transaction.pyÚ__init__zTransaction.__init__   s   € ð ˆŒÝ‘W”WˆŒ
ˆ
ˆ
ó    c                 ó.   — |                       ¦   «          | S ©N)Ústart©r
   s    r   Ú	__enter__zTransaction.__enter__   s   € Ø�
Š
‰ŒˆØˆr   c                 ó†   — |                       |du ¬¦  «         | j        r!d| j        _        d| j        _        d| _        dS dS )z;End transaction and commit, if exit is not due to exceptionN)ÚcommitF)Úcompleter   Ú_intransÚ_transaction)r
   Úexc_typeÚexc_valÚexc_tbs       r   Ú__exit__zTransaction.__exit__   sP   € ð 	�Š˜X¨Ð-ˆÑ.Ô.Ð.ØŒ7ð 	Ø$ˆDŒGÔØ#'ˆDŒGÔ ØˆDŒGˆGˆGð	ð 	r   c                 óD   — t          ¦   «         | _        d| j        _        dS )z&Start a transaction on this FileSystemTN)r   r	   r   r   r   s    r   r   zTransaction.start"   s   € å‘W”WˆŒ
ØˆŒÔÐÐr   Tc                 óè   — | j         rK| j                              ¦   «         }|r|                     ¦   «          n|                     ¦   «          | j         °Kd| j        _        d| j        _        d| _        dS ©z8Finish transaction: commit or discard all deferred filesFN)r	   Úpopleftr   Údiscardr   r   r   )r
   r   Úfs      r   r   zTransaction.complete'   sp   € àŒjð 	Ø”
×"Ò"Ñ$Ô$ˆAØð Ø—’‘
”
�
�
à—	’	‘”�ð Œjð 	ð !ˆŒÔØ#ˆŒÔØˆŒˆˆr   N©T)	Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   r   r   © r   r   r   r      sn   € € € € € ðð ðð ð ðð ð ðð ð ð ð  ð  ð

ð 
ð 
ð 
ð 
ð 
r   r   c                   ó&   — e Zd Zd„ Zd„ Zd„ Zd„ ZdS )Ú	FileActorc                 ó   — g | _         d S r   )r	   r   s    r   r   zFileActor.__init__5   s   € ØˆŒ
ˆ
ˆ
r   c                 ót   — | j         D ]}|                     ¦   «          Œ| j                              ¦   «          d S r   )r	   r   Úclear©r
   r"   s     r   r   zFileActor.commit8   s<   € Ø”ð 	ð 	ˆAØ�HŠH‰JŒJˆJˆJØŒ
×ÒÑÔÐÐÐr   c                 ót   — | j         D ]}|                     ¦   «          Œ| j                              ¦   «          d S r   )r	   r!   r-   r.   s     r   r!   zFileActor.discard=   s<   € Ø”ð 	ð 	ˆAØ�IŠI‰KŒKˆKˆKØŒ
×ÒÑÔÐÐÐr   c                 ó:   — | j                              |¦  «         d S r   )r	   Úappendr.   s     r   r1   zFileActor.appendB   s   € ØŒ
×Ò˜!ÑÔÐÐÐr   N)r$   r%   r&   r   r   r!   r1   r(   r   r   r*   r*   4   sP   € € € € € ðð ð ðð ð ð
ð ð ð
ð ð ð ð r   r*   c                   ó&   ‡ — e Zd Zˆ fd„Zdd„Zˆ xZS )ÚDaskTransactionc                 óà   •— ddl }t          ¦   «                              |¦  «         |                     ¦   «         }|                     t
          d¬¦  «                             ¦   «         | _        dS )r   r   NT)Úactor)ÚdistributedÚsuperr   Údefault_clientÚsubmitr*   Úresultr	   )r
   r   r6   ÚclientÚ	__class__s       €r   r   zDaskTransaction.__init__G   sa   ø€ ð 	ÐÐÐå‰Œ×Ò˜ÑÔÐØ×+Ò+Ñ-Ô-ˆØ—]’]¥9°D�]Ñ9Ô9×@Ò@ÑBÔBˆŒ
ˆ
ˆ
r   Tc                 óÞ   — |r,| j                              ¦   «                              ¦   «          n+| j                              ¦   «                              ¦   «          d| j        _        d| _        dS r   )r	   r   r:   r!   r   r   )r
   r   s     r   r   zDaskTransaction.completeS   sb   € àð 	*ØŒJ×ÒÑÔ×&Ò&Ñ(Ô(Ð(Ð(àŒJ×ÒÑ Ô ×'Ò'Ñ)Ô)Ð)Ø ˆŒÔØˆŒˆˆr   r#   )r$   r%   r&   r   r   Ú__classcell__)r<   s   @r   r3   r3   F   sQ   ø€ € € € € ð
Cð 
Cð 
Cð 
Cð 
Cðð ð ð ð ð ð ð r   r3   N)Úcollectionsr   r   r*   r3   r(   r   r   ú<module>r@      sœ   ðØ Ð Ð Ð Ð Ð ð-ð -ð -ð -ð -ñ -ô -ð -ð`ð ð ð ð ñ ô ð ð$ð ð ð ð �kñ ô ð ð ð r   