ó æ ”\c@sZddlmZddlZddlZejjƒZdgZdefd„ƒYZ dS(iÿÿÿÿ(t PluginLoaderNt RepositorycBs;eZd„Zed„ƒZd„Zd„Zd„ZRS(c Csktt|ƒjƒtƒ|_||_||_||_||_||_ ||_ ||_ ||_ dS(N( tsuperRt__init__tsett_pluginst_monitor_repositoryt_storage_factoryt_hardware_inventoryt_device_matchert_device_matcher_udevt_plugin_instance_factoryt _global_cfgt _variables( tselftmonitor_repositorytstorage_factorythardware_inventorytdevice_matchertdevice_matcher_udevtplugin_instance_factoryt global_cfgt variables((s</usr/lib/python2.7/site-packages/tuned/plugins/repository.pyR s        cCs|jS(N(R(R((s</usr/lib/python2.7/site-packages/tuned/plugins/repository.pytpluginsscCs(d|_d|_tjjj|_dS(Ns tuned.pluginstplugin_(t _namespacet_prefixttunedRtbasetPlugint _interface(R((s</usr/lib/python2.7/site-packages/tuned/plugins/repository.pyt_set_loader_parameterss  c Csmtjd|ƒ|j|ƒ}||j|j|j|j|j|j|j |j ƒ}|j j |ƒ|S(Nscreating plugin %s( tlogtdebugt load_pluginRRRR R R R R Rtadd(Rt plugin_namet plugin_clstplugin_instance((s</usr/lib/python2.7/site-packages/tuned/plugins/repository.pytcreate s cCsGt||jƒst‚tjd|ƒ|jƒ|jj|ƒdS(Nsremoving plugin %s(t isinstanceRtAssertionErrorR R!tcleanupRtremove(Rtplugin((s</usr/lib/python2.7/site-packages/tuned/plugins/repository.pytdelete(s (t__name__t __module__RtpropertyRRR'R-(((s</usr/lib/python2.7/site-packages/tuned/plugins/repository.pyR s    ( ttuned.utils.plugin_loaderRttuned.plugins.baseRt tuned.logstlogstgetR t__all__R(((s</usr/lib/python2.7/site-packages/tuned/plugins/repository.pyts