�
�[/\c @@ s� d d l m Z d d l m Z d d l m Z d d l m Z d d l m Z d d l Z
d d l Z
d d l Z
d d l
Z
d d l Z d d l Z d d l Z d Z e j d � Z d e
j j f d
� � YZ d e f d � � YZ d S(
i ( t absolute_import( t unicode_literals( t hexlify( t unlink_f( t _Nu /usr/bin/applydeltarpmu dnft DeltaPayloadc B@ sS e Z d � Z d � Z d � Z d � Z e d � � Z e d � � Z d � Z RS( c C@ s/ t t | � j | | � | | _ | | _ d S( N( t superR t __init__t
delta_infot delta( t selfR R t pkgt progress( ( s, /usr/lib/python2.7/site-packages/dnf/drpm.pyR ) s c C@ s t j j | j j � S( N( t ost patht basenameR t location( R
( ( s, /usr/lib/python2.7/site-packages/dnf/drpm.pyt __str__. s c C@ sH t t | � j | | | � | t j j j k rD | j j | � n d S( N( R R t _end_cbt libdnft repot PackageTargetCBt TransferStatus_ERRORR t enqueue( R
t cbdatat lr_statust msg( ( s, /usr/lib/python2.7/site-packages/dnf/drpm.pyR 1 s c C@ s� | j } | j \ } } t j | � } t | � j � } t j j j | � } | t j j j
k r| t j t
d � | � n i | j d 6| d 6| d 6| j d 6| j d 6S( Nu unsupported checksum type: %su relative_urlu
checksum_typeu checksumu expectedsizeu base_url( R t chksumt hawkeyt chksum_nameR t decodeR R t
PackageTargett checksumTypet ChecksumType_UNKNOWNt loggert warningR R t downloadsizet baseurl( R
R t ctypet csumR t
ctype_code( ( s, /usr/lib/python2.7/site-packages/dnf/drpm.pyt _target_params6 s
c C@ s
| j j S( N( R R$ ( R
( ( s, /usr/lib/python2.7/site-packages/dnf/drpm.pyt
download_sizeH s c C@ s
| j j S( N( R R$ ( R
( ( s, /usr/lib/python2.7/site-packages/dnf/drpm.pyt
_full_sizeL s c C@ s4 | j j } t j j | j j j t j j | � � S( N( R R R
R t joinR R t pkgdirR ( R
R ( ( s, /usr/lib/python2.7/site-packages/dnf/drpm.pyt localPkgP s (
t __name__t
__module__R R R R) t propertyR* R+ R. ( ( ( s, /usr/lib/python2.7/site-packages/dnf/drpm.pyR ( s t DeltaInfoc B@ sA e Z d d � Z d � Z d � Z d � Z d � Z d � Z RS( c C@ s� t | _ t j t t j � r* t | _ n y t j d � | _ Wn t t
f k
rb d | _ n X| d k r� t j
j � j | _ n | | _ | | _ | | _ g | _ i | _ i | _ d S( u� A delta lookup and rebuild context
query -- installed packages to use when looking up deltas
progress -- progress obj to display finished delta rebuilds
u SC_NPROCESSORS_ONLNi N( t Falset deltarpm_installedR
t accesst
APPLYDELTAt X_OKt Truet sysconft
deltarpm_jobst TypeErrort
ValueErrort Nonet dnft conft Conft deltarpm_percentaget queryR t queuet jobst err( R
RB R RA ( ( s, /usr/lib/python2.7/site-packages/dnf/drpm.pyR V s
c C@ s� | j s
d S| j j s$ | j r( d S| j � r8 d St j j | j � � rT d S| j
| j d } d } xb | j j d | j
d | j � D]? } | j | j � } | r� | j | k r� | j } | } q� q� W| r� t | | | | � Sd S( u&