ó %±3Xc@@s}ddlmZddlZddlZddlZdefd„ƒYZdefd„ƒYZdej fd„ƒYZ dS( i(tabsolute_importNt ConfigViewcB@sãeZddd„Zed„ƒZejd„ƒZed„ƒZejd„ƒZddd„Ze d„Z de d„Z de d„Z de d „Z de d „Zd „Zd „Zed „ƒZedd„ƒZRS(cC@sO|j|_||_d|_d|_|r9||_n|rK||_ndS(N(tlogt_ConfigView__datatNonet_ConfigView__regiont_ConfigView__usertregiontuser(tselftdataRR((s9/usr/lib/python2.7/site-packages/requestbuilder/config.pyt__init__s     cC@s|jS(N(R(R ((s9/usr/lib/python2.7/site-packages/requestbuilder/config.pyR"scC@s ||_|jjd|ƒdS(Nsset region to %s(RRtinfo(R tvalue((s9/usr/lib/python2.7/site-packages/requestbuilder/config.pyR&s cC@s|jS(N(R(R ((s9/usr/lib/python2.7/site-packages/requestbuilder/config.pyR+scC@s ||_|jjd|ƒdS(Nsset user to %s(RRR (R R ((s9/usr/lib/python2.7/site-packages/requestbuilder/config.pyR/s cC@s7|p |j}|p|j}t|jd|d|ƒS(NRR(RRRR(R RR((s9/usr/lib/python2.7/site-packages/requestbuilder/config.pytclone4scC@s|jj|d|ƒS(Ntredact(Rt lookup_global(R toptionR((s9/usr/lib/python2.7/site-packages/requestbuilder/config.pytget_global_option9scC@s|j|d|d|ƒdS(NRRi(tget_region_option2(R RRR((s9/usr/lib/python2.7/site-packages/requestbuilder/config.pytget_region_option<sc C@sA|p |j}|r=|jj|jj||d|ddƒSdS(NRtconfdict_log_nameR(NN(RRtlookuptregionsR(R RRR((s9/usr/lib/python2.7/site-packages/requestbuilder/config.pyR@s cC@s|j|d|d|ƒdS(NRRi(tget_user_option2(R RRR((s9/usr/lib/python2.7/site-packages/requestbuilder/config.pytget_user_optionHsc C@sA|p |j}|r=|jj|jj||d|ddƒSdS(NRRR(NN(RRRtusersR(R RRR((s9/usr/lib/python2.7/site-packages/requestbuilder/config.pyRKs  cC@s|j|jj|ƒS(N(t_ConfigView__get_all_optionsRR(R R((s9/usr/lib/python2.7/site-packages/requestbuilder/config.pytget_all_region_optionsRscC@s|j|jj|ƒS(N(RRR(R R((s9/usr/lib/python2.7/site-packages/requestbuilder/config.pytget_all_user_optionsUscC@sSi}xFtj|ƒD]5\}}d|kr||kr||||~st:sAconfiguration file region {0} must not contain an empty namespacet@s;configuration file region {0} must not contain @ characterstnameiÿÿÿÿsuser cs@s|]}|dkVqdS(RGN((RHRI((s9/usr/lib/python2.7/site-packages/requestbuilder/config.pys Šss?configuration file user {0} must not contain an empty namespaces9configuration file user {0} must not contain @ characters(Rtmovest configparsertSafeConfigParsertreadtsectionstdicttitemsRBt startswithtsplittanyR2R3R4Rt setdefaulttrsplitR(R REtparserR#RR((s9/usr/lib/python2.7/site-packages/requestbuilder/config.pyRDvs8   ' cC@së|jjt|jƒiƒ||jt|jƒkrP|jt|jƒ|S|jjd|ƒ|jj|ƒ}||jt|jƒ|<|r±|r±|jjd|ƒn2|rÐ|jjd||ƒn|jjd|ƒ|SdS(Nsfinding global option %ss found %s = s found %s = %ss novalue for %s(RCRWtidRBRR tget(R RRR ((s9/usr/lib/python2.7/site-packages/requestbuilder/config.pyR•s cC@s¾|jjt|ƒiƒ||f|jt|ƒkrS|jt|ƒ||fS|dk rx|jjd||ƒn|j|||d|d|ƒ}||jt|ƒ||f<|SdS(Nsfinding %s option %sRtseen(RCRWRZRRR t_ConfigData__lookup(R R!R#RRR\Rtvalues((s9/usr/lib/python2.7/site-packages/requestbuilder/config.pyR¥s   c @s‡fd†}|dkr$g}n|jdƒ‰x§tjttfdtˆƒƒD]„‰ˆtfkrpqUndj‡‡fd†ttˆƒƒDƒƒ}|j j d|ƒ||krU|||krU|||}|j dƒrª|jƒ} t| ƒdkr t dj |ƒƒ‚n| d} t| ƒd krI| d } n|} |j j d | | ƒ| |kr—|j|| | d ˆd ||gƒS|j jd ƒn|j jd|||t|ƒƒƒ||fSqUWi} x||D]t}|jdƒ} t| ƒtˆƒkrê| tˆƒ ˆkrê| jt| ƒgƒ| t| ƒj|ƒqêqêW| r| t| ƒ}t|ƒdkrô|j j d|d||ƒ|d|krá|j||d|d ˆd ||gƒS|j jd ƒqt dj t|ƒdj|ƒƒƒ‚n|j j dƒd|krv||dkrv|j jd||t|ƒƒƒ|dfS|j jd|ƒdS(Nc@sˆr dS|SdS(Ns ((R (R(s9/usr/lib/python2.7/site-packages/requestbuilder/config.pytredact_if_necessary´sRJtrepeatc3@s)|]}ˆ|rˆ|ndVqdS(RN((RHti(tprdt section_bits(s9/usr/lib/python2.7/site-packages/requestbuilder/config.pys Äss section %ssuse is"something must follow 'use' in {0}is jump-to %s::%s (deferred)RR\s aborting jump due to a loops found %s::%s = %ss jump-to %s::%s (from %s)is){0} is ambiguous; closest matches are {1}s, s section *Rs found *::%s = %ss novalue for %s(NN(RRUt itertoolstproductR0R1tlentjointrangeRtdebugRTR2R3RtwarningR R4RWtappendtmin(R R!R#RRR\R_t s_sectionR t value_bitst new_sectiont new_optiontprefixed_countsts_section_bitstshortest_prefixed((RbRRcs9/usr/lib/python2.7/site-packages/requestbuilder/config.pyt__lookup³sr  (       ! N( R7R8R RDR1RRRR](((s9/usr/lib/python2.7/site-packages/requestbuilder/config.pyR<ls    RAcB@s#eZd„Zd„Zd„ZRS(cC@sdS(N((R trecord((s9/usr/lib/python2.7/site-packages/requestbuilder/config.pythandlescC@sdS(N((R Ru((s9/usr/lib/python2.7/site-packages/requestbuilder/config.pytemitscC@s d|_dS(N(Rtlock(R ((s9/usr/lib/python2.7/site-packages/requestbuilder/config.pyt createLock s(R7R8RvRwRy(((s9/usr/lib/python2.7/site-packages/requestbuilder/config.pyRAs  ( t __future__RRdR>t six.movesRtobjectRR<tHandlerRA(((s9/usr/lib/python2.7/site-packages/requestbuilder/config.pyts    U—