Hfc@sddlZddlZddlZddlZddlmZmZmZdZeefZ dZ ddZ dZ dZ d Zd Zd Zd Zd ZdZdZdZdZdZdZdZdZdS(iN(t PluginYumExitt TYPE_COREtTYPE_INTERACTIVEs2.3s/etc/yum/universal-hookstcCs'|jd|jdtjj|s0dSxttj|dD]}tj|tjrt |rtj |d|}|dkr|j dd|d|dt |qqtj |}|dkr|j dd |d t |qqJ|j dd |d qJWdS( Nt*t/s/*t iis!!!! "s" did not exit cleanly: s!!!! s did not exit cleanly: s is not executable( trstriptostpathtisdirtNonetsortedtglobtaccesstX_OKtlentsystemtinfotstr(tdirtconduittargstscripttexit((s'/usr/lib/yum-plugins/universal-hooks.pyt_run_dir!s     0 (cCs|j}|d|}i}xtj|dD]r}tjj|r4tjjtjj|}|}|jdd}tj d|d}|||R?R(RR.((s'/usr/lib/yum-plugins/universal-hooks.pytpostconfig_hookxscCs*|jddt}t|d|dS(sj Called early in Yum's initialisation. May be used for general plugin related initialisation. R=R.s/initN(R>R?R(RR.((s'/usr/lib/yum-plugins/universal-hooks.pyt init_hookscCs*|jddt}t|d|dS(s Called just before Yum starts downloads of packages. Plugins may access information about the packages to be downloaded here. R=R.s /predownloadN(R>R?R(RR.((s'/usr/lib/yum-plugins/universal-hooks.pytpredownload_hookscCs*|jddt}t|d|dS(s Called just after Yum finishes package downloads. Plugins may access error information about the packages just downloaded. R=R.s /postdownloadN(R>R?R(RR.((s'/usr/lib/yum-plugins/universal-hooks.pytpostdownload_hookscCs*|jddt}t|d|dS(sH Called just before Yum initialises its repository information. R=R.s /prereposetupN(R>R?R(RR.((s'/usr/lib/yum-plugins/universal-hooks.pytprereposetup_hookscCs*|jddt}t|d|dS(sG Called just after Yum initialises its repository information. R=R.s/postreposetupN(R>R?R(RR.((s'/usr/lib/yum-plugins/universal-hooks.pytpostreposetup_hookscCs*|jddt}t|d|dS(sv Called after package inclusion and exclusions are processed. Plugins may modify package exclusions here. R=R.s/excludeN(R>R?R(RR.((s'/usr/lib/yum-plugins/universal-hooks.pyt exclude_hookscCs*|jddt}t|d|dS(s6 Called before Yum begins package resolution. R=R.s /preresolveN(R>R?R(RR.((s'/usr/lib/yum-plugins/universal-hooks.pytpreresolve_hookscCs*|jddt}t|d|dS(s< Called just after Yum finishes package resolution. R=R.s /postresolveN(R>R?R(RR.((s'/usr/lib/yum-plugins/universal-hooks.pytpostresolve_hookscCs:|jddt}t||dt|d|dS(s= Called before Yum begins the RPM update transation. R=R.tpretranss /pretransN(R>R?R<R(RR.((s'/usr/lib/yum-plugins/universal-hooks.pyt pretrans_hookscCs:|jddt}t||dt|d|dS(sG Called just after Yum has finished the RPM update transation. R=R.t posttranss /posttransN(R>R?R<R(RR.((s'/usr/lib/yum-plugins/universal-hooks.pytposttrans_hookscCs*|jddt}t|d|dS(sl Called as Yum is performing a normal exit. Plugins may wish to perform cleanup functions here. R=R.s/closeN(R>R?R(RR.((s'/usr/lib/yum-plugins/universal-hooks.pyt close_hookscCs*|jddt}t|d|dS(s Called during Yum's cleanup. This slot will be executed when Yum is run with the parameters 'clean all' or 'clean plugins'. R=R.s/cleanN(R>R?R(RR.((s'/usr/lib/yum-plugins/universal-hooks.pyt clean_hooks(RR R!R#t yum.pluginsRRRtrequires_api_versiont plugin_typeR?RR<R@RARBRCRDRERFRGRHRIRKRMRNRO(((s'/usr/lib/yum-plugins/universal-hooks.pyts(0   2