� <��g^ ��b�ddlmZGd�d��ZGd�d��ZGd�de��ZdS) �)�dequec�2�eZdZdZd�Zd�Zd�Zd�Zd d�ZdS) � TransactionaFilesystem 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��|_dS)�O Parameters ---------- fs: FileSystem instance N)�fsr�files)�selfr�kwargss �b/home/asafur/pinokio/api/open-webui.git/app/env/lib/python3.11/site-packages/fsspec/transaction.py�__init__zTransaction.__init__ s�� ����W�W�� � � �c�.�|���|S�N)�start�r s r � __enter__zTransaction.__enter__s�� � � � � � �� rc��|�|du���|jr!d|j_d|j_d|_dSdS)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__zTransaction.__exit__sP�� � � �X��-� �.�.�.� �7� �$�D�G� �#'�D�G� ��D�G�G�G� � rc�D�t��|_d|j_dS)z&Start a transaction on this FileSystemTN)rr rrrs r rzTransaction.start"s���W�W�� ������rTc���|jrK|j���}|r|���n|���|j�Kd|j_d|j_d|_dS�z8Finish transaction: commit or discard all deferred filesFN)r �popleftr�discardrrr)r r�fs r rzTransaction.complete'sp���j� �� �"�"�$�$�A�� ���� � � � �� � � � � � �j� � !����#��������rN�T) �__name__� __module__� __qualname__�__doc__r rrrr�rr rrsn����������������� � � � � � � � � rrc�&�eZdZd�Zd�Zd�Zd�ZdS)� FileActorc��g|_dSr)r rs r r zFileActor.__init__5s ���� � � rc�t�|jD]}|����|j���dSr)r r�clear�r r"s r rzFileActor.commit8s<���� � �A� �H�H�J�J�J�J� � �������rc�t�|jD]}|����|j���dSr)r r!r-r.s r r!zFileActor.discard=s<���� � �A� �I�I�K�K�K�K� � �������rc�:�|j�|��dSr)r �appendr.s r r1zFileActor.appendBs�� � ���!�����rN)r$r%r&r rr!r1r(rr r*r*4sP������������ ��� ����rr*c�&��eZdZ�fd�Zdd�Z�xZS)�DaskTransactionc����ddl}t���|��|���}|�t d������|_dS)rrNT)�actor)� distributed�superr �default_client�submitr*�resultr )r rr6�client� __class__s �r r zDaskTransaction.__init__Gsa��� ���� ����������+�+�-�-���]�]�9�D�]�9�9�@�@�B�B�� � � rTc���|r,|j������n+|j������d|j_d|_dSr)r rr:r!rr)r rs r rzDaskTransaction.completeSsb�� � *� �J� � � � � &� &� (� (� (� (� �J� � � � � '� '� )� )� )� ��������rr#)r$r%r&r r� __classcell__)r<s@r r3r3FsQ������� C� C� C� C� C��������rr3N)� collectionsrrr*r3r(rr �<module>r@s���������-�-�-�-�-�-�-�-�`��������$�����k�����r
Memory