%3Xc@@s}ddlmZddlZddlZddlZdefdYZdefdYZdej fdYZ dS( i(tabsolute_importNt ConfigViewcB@seZdddZedZejdZedZejdZdddZe dZ de dZ de dZ de d Z de d Zd Zd Zed ZeddZRS(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|ddSdS(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|ddSdS(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 @ characterstnameisuser 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|ji||jt|jkrP|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.pyRs 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.pyRs   c @sfd}|dkr$g}n|jdxtjttfdtD]tfkrpqUndjfdttD}|j j d|||krU|||krU|||}|j dr|j} t| dkr t dj |n| d} t| d krI| d } n|} |j j d | | | |kr|j|| | d d ||gS|j jd n|j jd|||t|||fSqUWi} x||D]t}|jd} t| tkr| t kr| jt| g| t| j|qqW| r| t| }t|dkr|j j d|d|||d|kr|j||d|d d ||gS|j jd qt dj t|dj|n|j j dd|krv||dkrv|j jd||t||dfS|j jd|dS(Nc@sr dS|SdS(Ns ((R (R(s9/usr/lib/python2.7/site-packages/requestbuilder/config.pytredact_if_necessarysRJtrepeatc3@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__lookupsr  (       ! N( R7R8R RDR1RRRR](((s9/usr/lib/python2.7/site-packages/requestbuilder/config.pyR<ls    RAcB@s#eZdZdZdZRS(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