File: //usr/lib/python3/dist-packages/duplicity/backends/__pycache__/localbackend.cpython-310.pyc
o
G!a� � @ sR d dl Z d dlZd dlmZmZ d dlmZ G dd� dejj�Z ej�
de � dS )� N)�path�progress)�BackendExceptionc @ sP e Zd ZdZdd� Zdd� Zdd� Zdd � Zd
d� Zdd
� Z dd� Z
dd� ZdS )�LocalBackendz�Use this backend when saving to local disk
Urls look like file://testfiles/output. Relative to root can be
gotten with extra slash (file:///usr/local).
c C sd t jj�| |� |j�d�std��t�|jdd � �| _z
t �
| jj� W d S ty1 Y d S w )Nz//zBad file:// path syntax.� )
� duplicity�backend�Backend�__init__r �
startswithr �Path�remote_pathdir�os�makedirs�base� Exception)�self�
parsed_url� r �A/usr/lib/python3/dist-packages/duplicity/backends/localbackend.pyr
$ s �zLocalBackend.__init__c C s2 | j �|�}z|�|� W dS ty Y dS w )NTF)r
�append�rename�OSError)r �source_path�remote_filename�target_pathr r r �_move/ s
�zLocalBackend._movec C sH | j �|�}|�� |�� }t�d|� |�|�d�� t�||� d S )Nr �rb)r
r �setdata�getsizer �report_transfer�writefileobj�open)r r r r �source_sizer r r �_put7 s zLocalBackend._putc C s | j �|�}|�|�d�� d S )Nr )r
r r! r"