Yiac@sjddlZddlZddlmZejddkrGefZn efZdefdYZ dS(iN(ttsiitTransactionSetcBseZdZdZdZdZdZdZdZdZ dZ d Z d Z d d Z d ZdZdZdZdZdZRS(icCs#t||}t||||S(N(tgetattrtsetattr(tselftattrtvaltoval((s5/usr/lib64/python2.7/site-packages/rpm/transaction.pyt _wrapSetGetscCs|jd|S(Nt_vsflags(R(Rtflags((s5/usr/lib64/python2.7/site-packages/rpm/transaction.pyt setVSFlagsscCs|jS(N(R (R((s5/usr/lib64/python2.7/site-packages/rpm/transaction.pyt getVSFlagsscCs|jd|S(Nt_color(R(Rtcolor((s5/usr/lib64/python2.7/site-packages/rpm/transaction.pytsetColorscCs|jd|S(Nt _prefcolor(R(RR((s5/usr/lib64/python2.7/site-packages/rpm/transaction.pyt setPrefColorscCs|jd|S(Nt_flags(R(RR ((s5/usr/lib64/python2.7/site-packages/rpm/transaction.pytsetFlags!scCs|jd|S(Nt _probFilter(R(Rt ignoreSet((s5/usr/lib64/python2.7/site-packages/rpm/transaction.pyt setProbFilter$scCsddl}|j|S(Ni(t_rpmbtspec(RtspecfileR((s5/usr/lib64/python2.7/site-packages/rpm/transaction.pyt parseSpec's cCsBg}x!|D]}|j|jq W|s4dSt|SdS(N(tappendtKeytNonettuple(Rtkeystte((s5/usr/lib64/python2.7/site-packages/rpm/transaction.pytgetKeys+s  cCset|tr7t|}|j|}|jn*t|tjrR|}n|j|}|S(N(t isinstancet _string_typestopent hdrFromFdnotclosetrpmthdr(Rtitemtftheader((s5/usr/lib64/python2.7/site-packages/rpm/transaction.pyt_f2hdr5s   tucCsd|j|}|dkr*tdn|dk}tj||||s`tjdndS(NR-tishow argument must be "u" or "i"s$adding package to transaction failed(R-R.(R,t ValueErrortTransactionSetCoret addInstallR'terror(RR)tkeythowR+tupgrade((s5/usr/lib64/python2.7/site-packages/rpm/transaction.pyR1@s   cCs:|j|}tj|||s6tjdndS(Ns$adding package to transaction failed(R,R0t addReinstallR'R2(RR)R3R+((s5/usr/lib64/python2.7/site-packages/rpm/transaction.pyR6JscCsg}t|tjr$|g}nt|tjr?|}ndt|trf|jtj|}n=t|tr|jtj|}nt dt |x2|D]*}t j ||stj dqqWt|tjr~ndS(Nsinvalid type %sspackage not installed(R"R'R(tmitinttdbMatchtRPMDBI_PACKAGESR#t RPMDBI_LABELt TypeErrorttypeR0taddEraseR2(RR)thdrsth((s5/usr/lib64/python2.7/site-packages/rpm/transaction.pyR>Ps   cCstj||||j}|dkr+dSg}|dkrxF|jD]5}d||j|j|jff}|j|qJWn|S(Nis%s( R0trunRRtproblemsR=t_strt_numR(RtcallbacktdatatrctrestprobR)((s5/usr/lib64/python2.7/site-packages/rpm/transaction.pyRAes  "cOstj|||g}xu|jD]g}|jtjkrJtj}n!|jtjkr&tj}nq&|j j ddd}|j dd\}}} |j j } | d} tj } t| dkrY| d} | jddkr| tjO} n| jddkr'| tjO} n| jd dkrL| tjO} n| d}nd }|j||| f| |f| ||jfq&W|S( Nt.iit-iitt(R0tcheckRBR=R'tRPMPROB_CONFLICTtRPMDEP_SENSE_CONFLICTStRPMPROB_REQUIREStRPMDEP_SENSE_REQUIREStaltNEVRtrsplitRCtsplitt RPMSENSE_ANYtlentfindt RPMSENSE_LESStRPMSENSE_EQUALtRPMSENSE_GREATERRR3(RtargstkwdsRHtptsensetnevrtntvtrtneedstneednamet needflagstneedoptneedver((s5/usr/lib64/python2.7/site-packages/rpm/transaction.pyRPus2      2cCstj||\}}|tjkr9tjdnB|tjkrZtjdn!|tjkr{tj|ndS(Nspublic key not availablespublic key not trusted(R0thdrCheckR't RPMRC_NOKEYR2tRPMRC_NOTTRUSTEDtRPMRC_OK(RtblobRHtmsg((s5/usr/lib64/python2.7/site-packages/rpm/transaction.pyRkscCstj||\}}|tjkr9tjdnB|tjkrZtjdn!|tjkr{tjdn|S(Nspublic key not availablespublic key not trustedserror reading package header(R0R%R'RlR2RmRn(RtfdRHR@((s5/usr/lib64/python2.7/site-packages/rpm/transaction.pyR%s(t__name__t __module__RRR R RRRRRR!R,R1R6R>RARPRkR%(((s5/usr/lib64/python2.7/site-packages/rpm/transaction.pyR s$            # ( tsysR'trpm._rpmRR0t version_infotstrR#t basestringR(((s5/usr/lib64/python2.7/site-packages/rpm/transaction.pyts