3 �f�r � @ s� d dl Z d dlZd dlZd dlZd dlZd dlZd dlZd dlZd dlmZ d dl m Z d dlmZ d dl mZ yd dlZW n ek r� Y nX dZdZdZd ZG d d� de�ZG dd � d e�ZG dd� de�ZdS )� N)�datetime)�Lock)� find_spec)�sos_get_command_output�file�linkZnode�dirc @ s� e Zd ZdZedd� �Zejd�ZdZ dZ e� Zdd� Z d d � Zdd� Zd d� Zdd� Zdd� Zd+dd�Zd,dd�Zdd� Zdd� Zdd� Zdd � Zd!d"� Zd#d$� Zd%d&� Zd'd(� Zd)d*� ZdS )-�Archivez!Abstract base class for archives.c C s | j S )z6Returns the archive class's name as a string. )�__name__)�cls� r �/usr/lib/python3.6/archive.py�archive_type+ s zArchive.archive_typeZsosZunsetFc C s d| j � |f S )Nz[archive:%s] %s)r )�self�msgr r r �_format_msg8 s zArchive._format_msgc C s || _ d S )N)�_debug)r �debugr r r � set_debug; s zArchive.set_debugc C s | j j| j|�� d S )N)�log�errorr )r r r r r � log_error>