MINI MINI MANI MO

Path : /usr/lib/python2.7/site-packages/tuned/profiles/
File Upload :
Current File : //usr/lib/python2.7/site-packages/tuned/profiles/loader.pyc

ó
©=[c@s¦ddlZddlZddlmZmZddljZddlZ	ddl
Z
ddlZddlZddl
mZejjƒZdefd„ƒYZdS(iÿÿÿÿN(t	ConfigObjtConfigObjError(tInvalidProfileExceptiontLoadercBs€eZdZdddddgZd„Zd„Zed„ƒZed	„ƒZ	d
„Z
d„Zd„Zd
„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	tprofile_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_profileRtmergetnametunitsRtadd_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Ð|jj
|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&tfilenameRRtinclude_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(Ntraise_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	configobjRRttuned.conststconststos.pathRKRGt
tuned.logsRttuned.profiles.exceptionsRtlogsRNR!tobjectR(((s9/usr/lib/python2.7/site-packages/tuned/profiles/loader.pyt<module>s

OHA YOOOO