3 �<�e� � @ s$ d dl Z d dlZG dd� de�ZdS )� Nc @ sP e Zd ZdZdddddddd d ddd gZdd� Zedd� �Zedd� �Zej dd� �Zedd� �Z e j dd� �Z edd� �Zedd� �Zej dd� �Zedd� �Z e j dd� �Z ed d!� �Zej d"d!� �Zed#d$� �Zej d%d$� �Zed&d'� �Zej d(d'� �Zed)d*� �Zej d+d*� �Zed,d-� �Zej d.d-� �Zed/d0� �Zej d1d0� �Zd2S )3�Unitz Unit description. �_name�_type�_enabled�_replace�_drop�_devices�_devices_udev_regex�_cpuinfo_regex�_uname_regex�_script_pre�_script_post�_optionsc C s� || _ |jd| j �| _|jdd�dk| _|jdd �dk| _|jd d �| _| jd k rftjdt| j��| _|jdd �| _ |jdd �| _ |jdd �| _|jdd �| _|jdd �| _ |jdd �| _tj|�| _d S )N�type�enabledT�True�true� �1�replaceF�dropz\b\s*[,;]\s*�devices�*�devices_udev_regex� cpuinfo_regex�uname_regex� script_pre�script_post)Tr r r r )Tr r r r )r �popr r r r �re�split�strr r r r r r �collections�OrderedDictr )�self�name�config� r' �/usr/lib/python3.6/unit.py�__init__ s z Unit.__init__c C s | j S )N)r )r$ r' r' r( r% s z Unit.namec C s | j S )N)r )r$ r' r' r( r s z Unit.typec C s || _ d S )N)r )r$ �valuer' r' r( r $ s c C s | j S )N)r )r$ r' r' r( r ( s zUnit.enabledc C s || _ d S )N)r )r$ r* r' r' r( r , s c C s | j S )N)r )r$ r' r' r( r 0 s zUnit.replacec C s | j S )N)r )r$ r' r' r( r 4 s z Unit.dropc C s || _ d S )N)r )r$ r* r' r' r( r 8 s c C s | j S )N)r )r$ r' r' r( r <