a Íññ^"ã@s0ddlZddlZddlmZGdd„deƒZdS)éN)Útsc@sºeZdZdZdd„Zdd„Zdd„Zdd „Zd d „Zd d „Z dd„Z dd„Z dd„Z dd„Z dd„Zdd„Zdd„Zdd„Zd.dd „Zd!d"„Zd#d$„Zd%d&„Zd'd(„Zd)d*„Zd+d,„Zd-S)/ÚTransactionSetrcCst||ƒ}t|||ƒ|S©N)ÚgetattrÚsetattr)ÚselfÚattrÚvalZoval©r ú5/usr/lib64/python3.9/site-packages/rpm/transaction.pyÚ _wrapSetGet s  zTransactionSet._wrapSetGetcCs | d|¡S)NÚ_vsflags©r ©rÚflagsr r r Ú setVSFlagsszTransactionSet.setVSFlagscCs|jSr)r ©rr r r Ú getVSFlagsszTransactionSet.getVSFlagscCs | d|¡S)NÚ _vfyflagsrrr r r Ú setVfyFlagsszTransactionSet.setVfyFlagscCs|jSr)rrr r r Ú getVfyFlagsszTransactionSet.getVfyFlagscCs|jSr)Ú _vfylevelrr r r Ú getVfyLevelszTransactionSet.getVfyLevelcCs | d|¡S)Nrrrr r r Ú setVfyLevelszTransactionSet.setVfyLevelcCs | d|¡S)NZ_colorr©rZcolorr r r ÚsetColor szTransactionSet.setColorcCs | d|¡S)NZ _prefcolorrrr r r Ú setPrefColor#szTransactionSet.setPrefColorcCs | d|¡S)NZ_flagsrrr r r ÚsetFlags&szTransactionSet.setFlagscCs | d|¡S)NÚ _probFilterr)rZ ignoreSetr r r Ú setProbFilter)szTransactionSet.setProbFiltercCs t |¡Sr)ÚrpmÚspec)rZspecfiler r r Ú parseSpec,szTransactionSet.parseSpeccCs0g}|D]}| | ¡¡q|s$dSt|ƒSdSr)ÚappendZKeyÚtuple)rÚkeysÚter r r ÚgetKeys/s zTransactionSet.getKeyscCs^t|tƒr>t|ƒ}| |¡}WdƒqZ1s20Ynt|tjƒrP|}n | |¡}|Sr)Ú isinstanceÚstrÚopenÚ hdrFromFdnor Úhdr)rÚitemÚfÚheaderr r r Ú_f2hdr9s  *  zTransactionSet._f2hdrÚucCsP| |¡}|dvrtdƒ‚|dk}t ||||¡sL|rBt d¡‚n t d¡‚dS)N)r1Úizhow argument must be "u" or "i"r1z$adding upgrade to transaction failedz$adding install to transaction failed)r0Ú ValueErrorÚTransactionSetCoreÚ addInstallr Úerror)rr-ÚkeyZhowr/Zupgrader r r r5Cs  zTransactionSet.addInstallcCs&| |¡}t |||¡s"t d¡‚dS)Nz&adding reinstall to transaction failed)r0r4Ú addReinstallr r6)rr-r7r/r r r r8Ps zTransactionSet.addReinstallcCs´g}t|tjƒr|}nzt|tjƒr.| |¡nbt|ttfƒr€t|tƒrNtj}ntj}|  ||¡D]}| |¡q`|st  d¡‚nt dt |ƒƒ‚|D]}t  ||¡s”t  d¡‚q”dS)Nzpackage not installedzinvalid type %sz$adding erasure to transaction failed)r(r Úmir,r#Úintr)ZRPMDBI_PACKAGESZ RPMDBI_LABELZdbMatchr6Ú TypeErrorÚtyper4ÚaddErase)rr-ZhdrsZdbiÚhr r r r=Vs"       zTransactionSet.addErasecCs^t ||||j¡}|dkrdSg}|dkrZ| ¡D]&}d||j|j|jff}| |¡q2|S)Nrz%s)r4ÚrunrÚproblemsr<Ú_strZ_numr#)rÚcallbackÚdataÚrcÚresZprobr-r r r r?os  zTransactionSet.runcOs tj|g|¢Ri|¤Žg}| ¡D]â}|jtjkrÚ)r4Úcheckr@r<r ZRPMPROB_CONFLICTZRPMDEP_SENSE_CONFLICTSZRPMPROB_REQUIRESZRPMDEP_SENSE_REQUIRESZaltNEVRÚrsplitrAÚsplitZ RPMSENSE_ANYÚlenZ RPMSENSE_LESSZRPMSENSE_EQUALZRPMSENSE_GREATERr#r7)rÚargsÚkwdsrEÚpZsenseZnevrÚnÚvÚrZneedsZneednameZ needflagsZneedopZneedverr r r rOs6          ÿzTransactionSet.checkcCsTt ||¡\}}|tjkr&t d¡‚n*|tjkrr r r r+°s      zTransactionSet.hdrFromFdnoN)r1)Ú__name__Ú __module__Ú __qualname__rr rrrrrrrrrrr"r'r0r5r8r=r?rOr[r+r r r r rs,  ' r)Úsysr Zrpm._rpmrr4rr r r r Ús