Mini Shell

Direktori : /lib/python3.6/site-packages/blivet/tasks/__pycache__/
Upload File :
Current File : //lib/python3.6/site-packages/blivet/tasks/__pycache__/fssync.cpython-36.opt-1.pyc

3

{)c��@s�ddlZddlmZddlmZddlmZddlmZddlmZdd	lm	Z	eej
�Gd
d�de	jej��Z
Gdd
�d
e
�ZGdd�dej�ZdS)�N)�
add_metaclass�)�FSError)�util�)�availability)�fstask)�taskc@s"eZdZdZdZejdd��ZdS)�FSSyncz9 An abstract class that represents syncing a filesystem. zfilesystem syncingcCs
t��dS)N)�NotImplementedError)�self�r
�/usr/lib/python3.6/fssync.py�do_task)szFSSync.do_taskN)�__name__�
__module__�__qualname__�__doc__�description�abc�abstractmethodrr
r
r
rr
"sr
c@s>eZdZdZejZddd�Zd
dd�Zddd�Z	dd
d�Z
dS)�XFSSyncz Sync application for XFS. NcCs>|jj}|dk	r:|jdd�r:||kr*d}n|t|�d�}|S)N�/�)ZfsZsystem_mountpoint�replace�len)r�rootZ
mountpointr
r
r�_get_mountpoint4szXFSSync._get_mountpointcCst|j�d|j|d�gS)Nz-f)r)�str�extr)rrr
r
r�_freeze_command>szXFSSync._freeze_commandcCst|j�d|j|d�gS)Nz-u)r)rrr)rrr
r
r�_unfreeze_commandAszXFSSync._unfreeze_commandrcCs�|j}|rtdj|���d}ytj|j|d�|d�}Wn*tk
r`}zd|}WYdd}~XnX|ph|}ytj|j|d�|d�}Wn.tk
r�}z|p�d|}WYdd}~XnX|p�|}|r�t|��dS)N�
)rzfailed to sync filesytem: %szfailed to sync filesystem: %s)Zavailability_errorsr�joinrZrun_programr �OSErrorr!)rrZ
error_msgsZ	error_msgZrc�er
r
rrDs zXFSSync.do_task)N)N)N)r)rrrrrZ
XFSFREEZE_APPrrr r!rr
r
r
rr.s



rc@seZdZdS)�UnimplementedFSSyncN)rrrr
r
r
rr&[sr&)rZsixr�errorsrrrrrr	�ABCMetaZBasicApplicationZFSTaskr
rZUnimplementedFSTaskr&r
r
r
r�<module>s-