File: //usr/lib/python3.9/site-packages/tuned/units/__pycache__/manager.cpython-39.pyc
a
,�g� � @ s� d dl Z d dlZd dlZd dlZd dlZd dlZd dlZd dlm Z d dl
mZ d dlm
Z
ej�� ZdgZG dd� de�ZdS )� N)�GlobalConfig)�commands�Managerc s� e Zd ZdZd� fdd� Zedd� �Zedd� �Zed d
� �Zdd� Z d
d� Z
dd� Zdd� Zdd� Z
dd� Zdd� Zdd� Zdd� Zejfdd�Z� ZS ) r z?
Manager creates plugin instances and keeps a track of them.
Nc sJ t t| ��� || _|| _|| _|| _g | _g | _|p:t � | _
t� | _d S �N)
�superr �__init__�_plugins_repository�_monitors_repository�_def_instance_priority�_hardware_inventory�
_instances�_pluginsr �_configr �_cmd)�self�plugins_repositoryZmonitors_repositoryZdef_instance_priorityZhardware_inventoryZconfig�� __class__� �7/usr/lib/python3.9/site-packages/tuned/units/manager.pyr s zManager.__init__c C s | j S r )r
�r r r r �plugins! s zManager.pluginsc C s | j S r )r r r r r � instances% s zManager.instancesc C s | j S r )r r r r r r ) s zManager.plugins_repositoryc C sF |j d u rdS | j�tj�}|d u r0| j�d�}t�|j |tj �d uS )NTz
/proc/cpuinfo)
Z
cpuinfo_regexr �get�constsZCFG_CPUINFO_STRINGr Z read_file�re�search� MULTILINE)r �unitZcpuinfo_stringr r r �_unit_matches_cpuinfo- s
��zManager._unit_matches_cpuinfoc C sH |j d u rdS | j�tj�}|d u r2d�t�� �}t� |j |tj
�d uS )NT� )Zuname_regexr r r ZCFG_UNAME_STRING�join�os�unamer r r )r r Zuname_stringr r r �_unit_matches_uname6 s
��zManager._unit_matches_unamec
C s" g }t |�� �D ]�\}}|js.t�d| � q| �|�sHt�d| � q| �|�sbt�d| � q|jd u rzt| j �|_nt|j�|_|�
|� q|jdd� d� t�
� }|D ]}d ||j<