3 ©ft`Ä+ ã @ s˜ d Z ddlmZ ddlmZ ddlmZ ddlZddlZddl Zddl ZddlZddlZ ddlZ ddlZddlZddlZejdƒZG dd„ dejƒZdS ) z! Contains the dnf.Package class. é )Úabsolute_import)Úunicode_literals)Ú_NÚdnfc sÌ e Zd ZdZdZdZ‡ fdd„Ze‡ fdd„ƒZej dd„ ƒZed d „ ƒZ edd„ ƒZed d„ ƒZedd„ ƒZ edd„ ƒZe‡ fdd„ƒZej dd„ ƒZedd„ ƒZedd„ ƒZedd„ ƒZedd„ ƒZdd„ Zed d!„ ƒZed"d#„ ƒZed$d%„ ƒZed&d'„ ƒZed(d)„ ƒZej d*d)„ ƒZed+d,„ ƒZed-d.„ ƒZed/d0„ ƒZed1d2„ ƒZed3d4„ ƒZed5d6„ ƒZed7d8„ ƒZ d9d:„ Z!d;d<„ Z"d=d>„ Z#d?d@„ Z$dAdB„ Z%dRdGdH„Z&dIdJ„ Z'edKdL„ ƒZ(dMdN„ Z)dOdP„ Z*‡ Z+S )SÚPackagez Represents a package. #:api z -debuginfoz-debugsourcec s, t t| ƒj|ƒ || _d | _d | _d | _d S )N)Úsuperr Ú__init__ÚbaseÚ_priv_chksumÚ_repoÚ _priv_size)ÚselfZ initobjectr )Ú __class__© ú/usr/lib/python3.6/package.pyr 0 s zPackage.__init__c sŠ | j r| j S | jr~tjjjƒ }ytjj|| j ƒ}W n6 tj jk rh } ztjj t|ƒƒ‚W Y d d }~X nX tj|ƒtj|ƒfS tt| ƒjS )N)r Ú _from_cmdliner ZyumZmiscZget_default_chksum_typeÚlibdnfÚutilsZchecksum_valueÚlocationÚerrorÚErrorÚ exceptionsÚ MiscErrorÚstrÚhawkeyÚchksum_typeÚbinasciiZ unhexlifyr r Úchksum)r r Z chksum_valÚe)r r r Ú_chksum7 s "zPackage._chksumc C s || _ d S )N)r )r Úvalr r r r E s c C s | j tjkS )N)Úreponamer ZCMDLINE_REPO_NAME)r r r r r I s zPackage._from_cmdlinec C s | j tjkS )N)r! r ÚSYSTEM_REPO_NAME)r r r r Ú_from_systemM s zPackage._from_systemc C s* d}| j r| jjj| ƒ}|r$d| S | jS )a9 For installed packages returns id of repository from which the package was installed prefixed with '@' (if such information is available in the history database). Otherwise returns id of repository the package belongs to (@System for installed packages of unknown origin) Nú@)r# r ÚhistoryÚrepor! )r Zpkgrepor r r Ú _from_repoQ s zPackage._from_repoc C s | j r| jjj| ƒS dS )NÚ )r# r r% r&