Edit File: ve_config_reader.cpython-37.opt-1.pyc
B 5/9ea � @ s� d dl mZ d dlmZmZmZmZmZ d dlm Z d dl mZ ddlm Z d dlmZ edd d ddd dddg�Zedd d ddd dddg�Zedddddddd�ZdZG dd� de�ZdS )� )�absolute_import)�Tuple�Optional�Type�List�Iterator)�etree)� namedtuple� )�get_xml_config_etree)�ClPwd�Limits�cpu�ncpu�io�vmem�pmem�nproc�ep�iops�InheritedLimitsN�rootc @ s� e Zd ZdZddd�Zdd� Zdd� Zeefd d ��Z e dd� �Zd d� Ze fdd�Zdd� Zdd� Zdd� Zdd� Zdd� Zdd� Zdd� ZdS ) �XmlConfigReadera5 This class parses our xml into user-friendly primitive structures (dicts, tuples, namedtuples) This class may do: - data conversion (cpu & ncpu in config -> speed) - validation This class should NOT: - take care of user/package/reseller existence - write anything to xml Nc C st t � | _|d krt� | _n|| _dd� | �� D �| _dd� | �� D �| _dd� | �� D �| _ dd� | � � D �| _d S )Nc S s i | ]\}}||�qS � r )�.0Zid_�limitsr r �!py/clveconfig/ve_config_reader.py� <dictcomp>1 s z,XmlConfigReader.__init__.<locals>.<dictcomp>c S s i | ]\}}||�qS r r )r �keyr r r r r 2 s c S s i | ]\}}||�qS r r )r �namer r r r r 3 s c S s i | ]\}}||�qS r r )r r �defaultsr r r r 4 s )r �clpwdr �_xml_config� _users_limits� _users_map�_packages_limits� _packages_map�_resellers_limits�_resellers_limits_map�_resellers_defaults�_resellers_defaults_map)�selfZ_xml_config_etreer r r �__init__( s zXmlConfigReader.__init__c C s t | j�d�j�S )N�version)�intr"