509318396
Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­
<!DOCTYPE html>
<html>
3
Öù`gS  ã               @   sX   d dl mZ d dlZd dlZd dlmZ ejd  dkr>efZ	ne
fZ	G dd„ deƒZdS )é    )Úwith_statementN)Útsé   c               @   sº   e Zd ZdZdd„ Zdd„ Zdd„ Zdd	„ Zd
d„ Zdd„ Z	dd„ Z
dd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zd.dd „Zd!d"„ Zd#d$„ Zd%d&„ Zd'd(„ Zd)d*„ Zd+d,„ Zd-S )/ÚTransactionSetr   c             C   s   t | |ƒ}t| ||ƒ |S )N)ÚgetattrÚsetattr)ÚselfÚattrÚvalZoval© r   ú#/usr/lib64/python3.6/transaction.pyÚ_wrapSetGet   s    
zTransactionSet._wrapSetGetc             C   s   | j d|ƒS )NÚ_vsflags)r   )r   Úflagsr   r   r   Ú
setVSFlags   s    zTransactionSet.setVSFlagsc             C   s   | j S )N)r   )r   r   r   r   Ú
getVSFlags   s    zTransactionSet.getVSFlagsc             C   s   | j d|ƒS )NÚ	_vfyflags)r   )r   r   r   r   r   ÚsetVfyFlags   s    zTransactionSet.setVfyFlagsc             C   s   | j S )N)r   )r   r   r   r   ÚgetVfyFlags   s    zTransactionSet.getVfyFlagsc             C   s   | j S )N)Ú	_vfylevel)r   r   r   r   ÚgetVfyLevel"   s    zTransactionSet.getVfyLevelc             C   s   | j d|ƒS )Nr   )r   )r   r   r   r   r   ÚsetVfyLevel%   s    zTransactionSet.setVfyLevelc             C   s   | j d|ƒS )NZ_color)r   )r   Úcolorr   r   r   ÚsetColor(   s    zTransactionSet.setColorc             C   s   | j d|ƒS )NZ
_prefcolor)r   )r   r   r   r   r   ÚsetPrefColor+   s    zTransactionSet.setPrefColorc             C   s   | j d|ƒS )NZ_flags)r   )r   r   r   r   r   ÚsetFlags.   s    zTransactionSet.setFlagsc             C   s   | j d|ƒS )NÚ_probFilter)r   )r   Z	ignoreSetr   r   r   ÚsetProbFilter1   s    zTransactionSet.setProbFilterc             C   s   dd l }|jj|ƒS )Nr   )Z	rpm._rpmbZ_rpmbÚspec)r   ZspecfileÚrpmr   r   r   Ú	parseSpec4   s    zTransactionSet.parseSpecc             C   s4   g }x| D ]}|j |jƒ ƒ q
W |s(d S t|ƒS d S )N)ÚappendZKeyÚtuple)r   ÚkeysZter   r   r   ÚgetKeys8   s    
zTransactionSet.getKeysc          	   C   sJ   t |tƒr*t|ƒ�}| j|ƒ}W d Q R X nt |tjƒr<|}n
| j|ƒ}|S )N)Ú
isinstanceÚ_string_typesÚopenÚhdrFromFdnor   Úhdr)r   ÚitemÚfÚheaderr   r   r   Ú_f2hdrB   s    


zTransactionSet._f2hdrÚuc             C   s@   | j |ƒ}|dkrtdƒ‚|dk}tj| |||ƒs<tjdƒ‚d S )Nr.   Úizhow argument must be "u" or "i"z$adding package to transaction failed)r.   r/   )r-   Ú
ValueErrorÚTransactionSetCoreÚ
addInstallr   Úerror)r   r*   ÚkeyZhowr,   Zupgrader   r   r   r2   L   s    
zTransactionSet.addInstallc             C   s&   | j |ƒ}tj| ||ƒs"tjdƒ‚d S )Nz$adding package to transaction failed)r-   r1   ÚaddReinstallr   r3   )r   r*   r4   r,   r   r   r   r5   V   s    
zTransactionSet.addReinstallc             C   s¼   g }t |tjƒr|}n~t |tjƒr.|j|ƒ nft |ttfƒr„t |tƒrNtj}ntj}x| j	||ƒD ]}|j|ƒ qbW |s”tj
dƒ‚ntdt|ƒ ƒ‚x"|D ]}tj| |ƒsštj
dƒ‚qšW d S )Nzpackage not installedzinvalid type %s)r%   r   Zmir)   r!   Úintr&   ZRPMDBI_PACKAGESZRPMDBI_LABELZdbMatchr3   Ú	TypeErrorÚtyper1   ÚaddErase)r   r*   ZhdrsZdbiÚhr   r   r   r9   \   s"    

zTransactionSet.addErasec             C   sb   t j| ||| jƒ}|dkrd S g }|dkr^x2| jƒ D ]&}d| |j|j|jff}|j|ƒ q4W |S )Nr   z%s)r1   Úrunr   Úproblemsr8   Ú_strZ_numr!   )r   ÚcallbackÚdataZrcÚresZprobr*   r   r   r   r;   u   s    zTransactionSet.runc             O   s
  t j| f|ž|Ž g }xî| jƒ D ]â}|jtjkr8tj}n|jtjkr tj}nq |j	j
ddƒd }|j
ddƒ\}}}	|jjƒ }
|
d }tj}t|
ƒdkrÞ|
d }d|kr°|tjO }d|krÂ|tjO }d	|krÔ|tjO }|
d }nd
}|j|||	f||f|||jfƒ q W |S )NÚ.é   r   ú-é   r   ú<ú=ú>Ú )r1   Úcheckr<   r8   r   ZRPMPROB_CONFLICTZRPMDEP_SENSE_CONFLICTSZRPMPROB_REQUIRESZRPMDEP_SENSE_REQUIRESZaltNEVRÚrsplitr=   ÚsplitZRPMSENSE_ANYÚlenZRPMSENSE_LESSZRPMSENSE_EQUALZRPMSENSE_GREATERr!   r4   )r   ÚargsÚkwdsr@   ÚpZsenseZnevrÚnÚvÚrZneedsZneednameZ	needflagsZneedopZneedverr   r   r   rI   …   s4    




zTransactionSet.checkc             C   sT   t j| |ƒ\}}|tjkr&tjdƒ‚n*|tjkr<tjdƒ‚n|tjkrPtj|ƒ‚d S )Nzpublic key not availablezpublic key not trusted)r1   ÚhdrCheckr   ÚRPMRC_NOKEYr3   ÚRPMRC_NOTTRUSTEDÚRPMRC_OK)r   Zblobr@   Úmsgr   r   r   rS   ¬   s    


zTransactionSet.hdrCheckc             C   sT   t j| |ƒ\}}|tjkr&tjdƒ‚n*|tjkr<tjdƒ‚n|tjkrPtjdƒ‚|S )Nzpublic key not availablezpublic key not trustedzerror reading package header)r1   r(   r   rT   r3   rU   rV   )r   Úfdr@   r:   r   r   r   r(   ¶   s    



zTransactionSet.hdrFromFdnoN)r.   )Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   r   r   r   r   r   r   r   r    r$   r-   r2   r5   r9   r;   rI   rS   r(   r   r   r   r   r      s,   



'
r   )Z
__future__r   Úsysr   Zrpm._rpmr   r1   Úversion_infoÚstrr&   Z
basestringr   r   r   r   r   Ú<module>   s   