Spade
Mini Shell
| Directory:~$ /lib/python2.7/site-packages/tuned/profiles/ |
| [Home] [System Details] [Kill Me] |
�
��\c@s�ddlZddlZddlmZmZddljZddlZ ddl
Z
ddlZddlZddl
mZejj�Zdefd��YZdS(i����N(t ConfigObjtConfigObjError(tInvalidProfileExceptiontLoadercBs�eZdZdddddgZd�Zd�Zed��Zed ��Z d
�Z
d�Zd�Zd
�Z
d�ZRS(s
Profiles loader.
t_profile_locatort_profile_mergert_profile_factoryt_global_configt
_variablescCs1||_||_||_||_||_dS(N(RRRRR(tselftprofile_locatortprofile_factorytprofile_mergert
global_configt variables((s9/usr/lib/python2.7/site-packages/tuned/profiles/loader.pyt__init__s
cCstjjj||�S(N(ttunedtprofilestprofiletProfile(R tprofile_nametconfig((s9/usr/lib/python2.7/site-packages/tuned/profiles/loader.pyt_create_profilescCstjd|�S(Ns^[a-zA-Z0-9_.-]+$(tretmatch(tclsR((s9/usr/lib/python2.7/site-packages/tuned/profiles/loader.pyt safe_namescCs|jS(N(R(R ((s9/usr/lib/python2.7/site-packages/tuned/profiles/loader.pyR
"scCsGt|�tk r!|j�}ntt|j|��}t|�dkrZtd��nt|�dkr�tjddj |��ntjd|d�g}g}|j
|||�t|�dkr�|jj|�}n
|d}dj |�|_
d|jkr6|jj|jdj�|jd=n|j|�|S( Nis.No
profile or invalid profiles were specified.isloading profiles: %ss,
sloading profile: %st
R(ttypetlisttsplittfilterRtlenRtlogtinfotjoint
_load_profileRtmergetnametunitsRtadd_from_cfgtoptionst_expand_vars_in_devices(R t
profile_namesRtprocessed_filest
final_profile((s9/usr/lib/python2.7/site-packages/tuned/profiles/loader.pytload&s(
cCs>x7|jD],}|jj|j|j�|j|_q
WdS(N(R'Rtexpandtdevices(R Rtunit((s9/usr/lib/python2.7/site-packages/tuned/profiles/loader.pyR*Csc Cs�x�|D]�}|jj||�}|dkrYtd|tt|jj��f��n|j|�|j|�}|j j
||�}d|jkr�|jj
|jjd��}|j|g||�n|j|�qWdS(Ns!Cannot
find profile '%s' in '%s'.tinclude(Rt
get_configtNoneRRtreversedt_load_directoriestappendt_load_config_dataRtcreateR)RR/tpopR$( R R+RR,R&tfilenameRRtinclude_name((s9/usr/lib/python2.7/site-packages/tuned/profiles/loader.pyR$Gs
+
cCstjd||�S(Ns(?<!\\)\$\{i:PROFILE_DIR\}(Rtsub(R tprofile_dirtstring((s9/usr/lib/python2.7/site-packages/tuned/profiles/loader.pyt_expand_profile_dirVscCs�y"t|dtdtdt�}Wn&tk
rJ}td||��nXtj�}x�t|j��D]�}tj�||<yt||j��}Wn't k
r�td||f��nXx$|D]}||||||<q�WqjWt
jj|�}xE|D]=}x4||D](}|j
||||�|||<qWqWxw|D]o} d|| krP|| jdd�dk rPt
jj||| d�}
t
jj|
�g|| d<qPqPW|S(Ntraise_errorstlist_valuest
interpolationsCannot
parse '%s'.s(Error parsing section '%s' in file
'%s'.tscript(RtTruetFalseRRtcollectionstOrderedDictRtkeystAttributeErrortostpathtdirnameR@tgetR4R#tnormpath(R t file_namet
config_objteRtsectionRItoptiontdir_namet unit_nametscript_path((s9/usr/lib/python2.7/site-packages/tuned/profiles/loader.pyR8Ys,"
*
,$(t__name__t
__module__t__doc__t __slots__RRtclassmethodRtpropertyR
R.R*R$R@R8(((s9/usr/lib/python2.7/site-packages/tuned/profiles/loader.pyR
s (ttuned.profiles.profileRttuned.profiles.variablest configobjRRttuned.conststconststos.pathRKRGt
tuned.logsRttuned.profiles.exceptionsRtlogsRNR!tobjectR(((s9/usr/lib/python2.7/site-packages/tuned/profiles/loader.pyt<module>s