3 ��`gS�@sXddlmZddlZddlZddlmZejddkr>efZ ne fZ Gdd�de�Z dS)�)�with_statementN)�ts�c@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 �#/usr/lib64/python3.6/transaction.py� _wrapSetGets  zTransactionSet._wrapSetGetcCs |jd|�S)N�_vsflags)r )r�flagsr r r � setVSFlagsszTransactionSet.setVSFlagscCs|jS)N)r)rr r r � getVSFlagsszTransactionSet.getVSFlagscCs |jd|�S)N� _vfyflags)r )rrr r r � setVfyFlagsszTransactionSet.setVfyFlagscCs|jS)N)r)rr r r � getVfyFlagsszTransactionSet.getVfyFlagscCs|jS)N)� _vfylevel)rr r r � getVfyLevel"szTransactionSet.getVfyLevelcCs |jd|�S)Nr)r )rrr r r � setVfyLevel%szTransactionSet.setVfyLevelcCs |jd|�S)NZ_color)r )r�colorr r r �setColor(szTransactionSet.setColorcCs |jd|�S)NZ _prefcolor)r )rrr r r � setPrefColor+szTransactionSet.setPrefColorcCs |jd|�S)NZ_flags)r )rrr r r �setFlags.szTransactionSet.setFlagscCs |jd|�S)N� _probFilter)r )rZ ignoreSetr r r � setProbFilter1szTransactionSet.setProbFiltercCsddl}|jj|�S)Nr)Z rpm._rpmbZ_rpmb�spec)rZspecfile�rpmr r r � parseSpec4szTransactionSet.parseSpeccCs4g}x|D]}|j|j��q W|s(dSt|�SdS)N)�appendZKey�tuple)r�keysZter r r �getKeys8s  zTransactionSet.getKeysc CsJt|t�r*t|��}|j|�}WdQRXnt|tj�r<|}n |j|�}|S)N)� isinstance� _string_types�open� hdrFromFdnor�hdr)r�item�f�headerr r r �_f2hdrBs    zTransactionSet._f2hdr�ucCs@|j|�}|dkrtd��|dk}tj||||�s�)r1�checkr<r8rZRPMPROB_CONFLICTZRPMDEP_SENSE_CONFLICTSZRPMPROB_REQUIRESZRPMDEP_SENSE_REQUIRESZaltNEVR�rsplitr=�splitZ RPMSENSE_ANY�lenZ RPMSENSE_LESSZRPMSENSE_EQUALZRPMSENSE_GREATERr!r4)r�args�kwdsr@�pZsenseZnevr�n�v�rZneedsZneednameZ needflagsZneedopZneedverr r r rI�s4         zTransactionSet.checkcCsTtj||�\}}|tjkr&tjd��n*|tjkrs