£Á°èZ¨Ä…–K§‚«“ô4“ÒÙ´dîfUÙÃÅ WKbyÊ¦•êŽ…È®FÒ¿ÊÎóCozá¬S@6{Í:›œêZÌ:Š•_%:¢¾¾~;‘Ã~èŠ©ÊÇí`ÔÑ©úë™µ'5I¿fš×WO%ø9¾«¾DK|€ùÍD”Ýs]nHÕ¶ê×Ó¼ãžªéUWŸÈË%DÒÕ¬ï‘]/Åcx  ‰ï2ß]ä6G[]S£ÔÏ¯rs{úëóµmÒï#UQxo·õÞCe]"±/aÙ&Eã4ú9Jé_ÞåëdãöKë)AÞ                  ¯¹ægƒÛowÐø^d™ý½ßB7áyMä9ÜÖUã
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
<html>
3
<e?                 @   s@   d dl Zd dlZd dlmZ ejj ZdgZG dd deZ	dS )    N)PluginLoader
Repositoryc                   s@   e Zd Z fddZedd Zdd Zdd Zd	d
 Z  Z	S )r   c                s   t t| j  t | _d S )N)superr   __init__set	_monitors)self)	__class__  /usr/lib/python3.6/repository.pyr      s    zRepository.__init__c             C   s   | j S )N)r   )r   r
   r
   r   monitors   s    zRepository.monitorsc             C   s   d| _ d| _tjj| _d S )Nztuned.monitorsZmonitor_)Z
_namespace_prefixtunedr   ZMonitor
_interface)r   r
   r
   r   _set_loader_parameters   s    z!Repository._set_loader_parametersc             C   s0   t jd|  | j|}||}| jj| |S )Nzcreating monitor %s)logdebugZload_pluginr   add)r   Zplugin_nameZdevicesZmonitor_clsZmonitor_instancer
   r
   r   create   s
    
zRepository.createc             C   s(   t || jst|j  | jj| d S )N)
isinstancer   AssertionErrorZcleanupr   remove)r   Zmonitorr
   r
   r   delete   s    zRepository.delete)
__name__
__module____qualname__r   propertyr   r   r   r   __classcell__r
   r
   )r	   r   r   	   s
   )
Z
tuned.logsr   Ztuned.monitorsZtuned.utils.plugin_loaderr   Zlogsgetr   __all__r   r
   r
   r
   r   <module>   s
   
