<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet"
        integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.3.0/css/all.min.css"
        integrity="sha512-SzlrxWUlpfuzQ+pcUCosxcglQRNAq/DZjVsC0lE40xsADsfeQoEypE+enwcOiGjk/bSuGGKHEyjSoQ1zVisanQ=="
        crossorigin="anonymous" referrerpolicy="no-referrer" />
</head>
</html>
3
ft`                 @   sR   d dl mZ d dl mZ d dlmZ d dlZdZdZG dd deZ	d
dd	Z
dS )    )absolute_import)unicode_literals)_Nc               @   sz   e Z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d Z
dd Zdd Zdd Zdd Zi fddZdS )TransactionWrapper/c             C   s@   t j|| _ddddddddd	d
dddddg| _g | _d| _d S )NZcheckorderZaddEraseZ
addInstallZaddReinstallrunZpgpImportPubkeyZ
pgpPrtPktsZproblemssetFlags
setVSFlagssetProbFilterZhdrFromFdnonextZcleanT)rpmZTransactionSetts_methodstsflagsopen)selfroot r   !/usr/lib/python3.6/transaction.py__init__   s$    zTransactionWrapper.__init__c             C   s   | j   d S )N)close)r   r   r   r   __del__+   s    zTransactionWrapper.__del__c             C   s    | j r| jj  d | _d| _ d S )NF)r   r   ZcloseDB)r   r   r   r   r   /   s    
zTransactionWrapper.closec             O   sL   d|kr|j d}ng }| jj||}x |D ]\}}}|j||| q,W |S )Npatterns)popr   dbMatchpattern)r   argskwdsr   ZmitagtpZpatr   r   r   r   5   s    zTransactionWrapper.dbMatchc             C   s    || j kr| j|S t|d S )N)r   	getMethodAttributeError)r   attrr   r   r   __getattr__@   s    

zTransactionWrapper.__getattr__c             C   s   | j S )N)r   )r   r   r   r   __iter__F   s    zTransactionWrapper.__iter__c             C   s   t | j|S )N)getattrr   )r   methodr   r   r   r!   I   s    zTransactionWrapper.getMethodc             C   s"   | j j| | jj| j d  d S )N   )r   appendr   r
   )r   flagsr   r   r   pushVSFlagsQ   s    zTransactionWrapper.pushVSFlagsc             C   s    | j jd}| j j||B  d S )Nr   )r   r	   )r   flagcurflagsr   r   r   	addTsFlagU   s    zTransactionWrapper.addTsFlagc             C   s   | j jd}| j j| |S )Nr   )r   r	   )r   r.   r   r   r   
getTsFlagsY   s    zTransactionWrapper.getTsFlagsc             C   s   | j  }t||@ S )N)r0   bool)r   r-   valr   r   r   isTsFlagSet^   s    zTransactionWrapper.isTsFlagSetc             C   s   |j  | j_d S )N)filenor   ZscriptFd)r   fdr   r   r   setScriptFdb   s    zTransactionWrapper.setScriptFdc       
      C   s   | j  }| jtj |jddkr0| jjtj | jj|j	d}| jj
| g }|dk	rx |D ]\}\}}}	|j| q^W |s|jtd |S )zetests the ts we've setup, takes a callback function and a conf dict
           for flags and what notZdiskspacecheckr    Nz(Errors occurred during test transaction.)r0   r/   r   ZRPMTRANS_FLAG_TESTgetr   r   ZRPMPROB_FILTER_DISKSPACEr   callbackr	   r*   r   )
r   cbZconfZ	origflagsZtserrorsZ	reserrorsZdescretypeZmountZneedr   r   r   teste   s    zTransactionWrapper.testN)r   )__name__
__module____qualname__r   r   r   r   r$   r%   r!   r,   r/   r0   r3   r6   r<   r   r   r   r   r      s   
r   r   c             C   s    t | d}|jtjtjB  |S )N)r   )r   r,   r   Z_RPMVSF_NOSIGNATURESZ_RPMVSF_NODIGESTS)r   read_tsr   r   r   initReadOnlyTransaction{   s    
rA   )r   )Z
__future__r   r   Zdnf.i18nr   r   r@   r   objectr   rA   r   r   r   r   <module>   s   e