509318396
Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­
<!DOCTYPE html>
<html>
3
ÌÐg/  ã               @   s<  d dl Zd dlZd dlZd dlZdd„ Zdd„ ZG dd„ dejjj	j
ƒZG dd	„ d	ejjjjƒZG d
d„ dejjjjƒZG dd„ dejjjƒZG dd„ dejjjjƒZG dd„ dejjjjƒZG dd„ dejjjjƒZG dd„ dejjjjƒZdd„ Z e!dk�r8ye ej"dd… ƒ W n  e#k
�r6   ej$dƒ Y nX dS )é    Nc                s   t ‡ fdd„|ƒS )Nc                s   t | ƒjˆ ƒS )N)ÚstrÚ
startswith)Úk)Úkw© ú'/usr/lib/python3.6/completion_helper.pyÚ<lambda>   s    z#filter_list_by_kw.<locals>.<lambda>)Úfilter)r   Zlstr   )r   r   Úfilter_list_by_kw   s    r
   c             C   s   t dd„ | D ƒƒS )Nc             S   s   g | ]}t |ƒ‘qS r   )r   )Ú.0Úxr   r   r   ú
<listcomp>!   s    z%listpkg_to_setstr.<locals>.<listcomp>)Úset)Úpkgsr   r   r   Úlistpkg_to_setstr    s    r   c                   s,   e Zd Z‡ fdd„Zdd„ Zdd„ Z‡  ZS )ÚRemoveCompletionCommandc                s   t t| ƒj|ƒ d S )N)Úsuperr   Ú__init__)ÚselfÚargs)Ú	__class__r   r   r   $   s    z RemoveCompletionCommand.__init__c             C   s   d| j j_d| j j_d S )NFT)ÚcliÚdemandsÚ	root_userÚsack_activation)r   r   r   r   Ú	configure'   s    
z!RemoveCompletionCommand.configurec             C   s,   x&t j| j| jjƒD ]}tt|ƒƒ qW d S )N)ÚListCompletionCommandÚ	installedÚbaseÚoptsÚ	pkg_specsÚprintr   )r   Úpkgr   r   r   Úrun+   s    zRemoveCompletionCommand.run)Ú__name__Ú
__module__Ú__qualname__r   r   r#   Ú__classcell__r   r   )r   r   r   #   s   r   c                   s,   e Zd Z‡ fdd„Zdd„ Zdd„ Z‡  ZS )ÚInstallCompletionCommandc                s   t t| ƒj|ƒ d S )N)r   r(   r   )r   r   )r   r   r   r   1   s    z!InstallCompletionCommand.__init__c             C   s"   d| j j_d| j j_d| j j_d S )NFT)r   r   r   Úavailable_reposr   )r   r   r   r   r   4   s    

z"InstallCompletionCommand.configurec             C   sN   t tj| j| jjƒƒ}t tj| j| jjƒƒ}x|| D ]}tt|ƒƒ q6W d S )N)	r   r   r   r   r   r    Ú	availabler!   r   )r   r   r*   r"   r   r   r   r#   9   s    

zInstallCompletionCommand.run)r$   r%   r&   r   r   r#   r'   r   r   )r   r   r(   0   s   r(   c                   s,   e Zd Z‡ fdd„Zdd„ Zdd„ Z‡  ZS )ÚReinstallCompletionCommandc                s   t t| ƒj|ƒ d S )N)r   r+   r   )r   r   )r   r   r   r   C   s    z#ReinstallCompletionCommand.__init__c             C   s"   d| j j_d| j j_d| j j_d S )NFT)r   r   r   r)   r   )r   r   r   r   r   F   s    

z$ReinstallCompletionCommand.configurec             C   sN   t tj| j| jjƒƒ}t tj| j| jjƒƒ}x||@ D ]}tt|ƒƒ q6W d S )N)	r   r   r   r   r   r    r*   r!   r   )r   r   r*   r"   r   r   r   r#   K   s    

zReinstallCompletionCommand.run)r$   r%   r&   r   r   r#   r'   r   r   )r   r   r+   B   s   r+   c                   sH   e Zd Z‡ fdd„Zdd„ Zedd„ ƒZedd„ ƒZed	d
„ ƒZ‡  Z	S )r   c                s   t t| ƒj|ƒ d S )N)r   r   r   )r   r   )r   r   r   r   T   s    zListCompletionCommand.__init__c             C   sú   | j }| jj}| jj}t|ƒdkrH|d |krHtdjt|d |ƒƒƒ n®|dkr`| j| j	|ƒ}n||dkrx| j
| j	|ƒ}nd|dkr�| j| j	|ƒ}nLt| j
| j	|ƒƒ}t| j| j	|ƒƒ}||B }|sÜtdjt|d |ƒƒƒ d S x|D ]}tt|ƒƒ qâW d S )Né   Ú
r   r*   Úupdatesr   )Z
pkgnarrowsr   ZpackagesZpackages_actionÚlenr!   Újoinr
   r   r   r*   r.   r   r   )r   Úsubcmdsr   Úactionr   r*   r   r"   r   r   r   r#   W   s&    
zListCompletionCommand.runc             C   s    | j jƒ jƒ jdj|d ƒd�S )Nz{}*r   )Ú
name__glob)ÚsackÚqueryr   ÚfiltermÚformat)r   Úargr   r   r   r   n   s    zListCompletionCommand.installedc             C   s    | j jƒ jƒ jdj|d ƒd�S )Nz{}*r   )r3   )r4   r5   r*   r6   r7   )r   r8   r   r   r   r*   r   s    zListCompletionCommand.availablec             C   s   | j dj|d ƒgdd�S )Nz{}*r   F)Zprint_)Zcheck_updatesr7   )r   r8   r   r   r   r.   v   s    zListCompletionCommand.updates)
r$   r%   r&   r   r#   Ústaticmethodr   r*   r.   r'   r   r   )r   r   r   S   s
   r   c                   s$   e Zd Z‡ fdd„Zdd„ Z‡  ZS )ÚRepoListCompletionCommandc                s   t t| ƒj|ƒ d S )N)r   r:   r   )r   r   )r   r   r   r   |   s    z"RepoListCompletionCommand.__init__c             C   s°   | j }|jdkr>tdjt|jd dd„ | jjjƒ D ƒƒƒƒ nn|jdkrvtdjt|jd dd„ | jjjƒ D ƒƒƒƒ n6|jdkr¬tdjt|jd d	d„ | jjjƒ D ƒƒƒƒ d S )
NÚenabledr-   r   c             S   s   g | ]
}|j ‘qS r   )Úid)r   Úrr   r   r   r   ƒ   s    z1RepoListCompletionCommand.run.<locals>.<listcomp>Zdisabledc             S   s   g | ]}|j s|j‘qS r   )r;   r<   )r   r=   r   r   r   r   †   s    Úallc             S   s   g | ]
}|j ‘qS r   )r<   )r   r=   r   r   r   r   ‰   s    )	r   Zrepos_actionr!   r0   r
   Zreposr   Ziter_enabledr>   )r   r   r   r   r   r#      s    


zRepoListCompletionCommand.run)r$   r%   r&   r   r#   r'   r   r   )r   r   r:   {   s   r:   c                   s,   e Zd Z‡ fdd„Zdd„ Zdd„ Z‡  ZS )ÚUpgradeCompletionCommandc                s   t t| ƒj|ƒ d S )N)r   r?   r   )r   r   )r   r   r   r   �   s    z!UpgradeCompletionCommand.__init__c             C   s"   d| j j_d| j j_d| j j_d S )NFT)r   r   r   r)   r   )r   r   r   r   r   �   s    

z"UpgradeCompletionCommand.configurec             C   s,   x&t j| j| jjƒD ]}tt|ƒƒ qW d S )N)r   r.   r   r   r    r!   r   )r   r"   r   r   r   r#   •   s    zUpgradeCompletionCommand.run)r$   r%   r&   r   r   r#   r'   r   r   )r   r   r?   Œ   s   r?   c                   s,   e Zd Z‡ fdd„Zdd„ Zdd„ Z‡  ZS )ÚDowngradeCompletionCommandc                s   t t| ƒj|ƒ d S )N)r   r@   r   )r   r   )r   r   r   r   ›   s    z#DowngradeCompletionCommand.__init__c             C   s"   d| j j_d| j j_d| j j_d S )NFT)r   r   r   r)   r   )r   r   r   r   r   ž   s    

z$DowngradeCompletionCommand.configurec             C   s0   x*t j| j| jjƒjƒ D ]}tt|ƒƒ qW d S )N)r   r*   r   r   r    Z
downgradesr!   r   )r   r"   r   r   r   r#   £   s    zDowngradeCompletionCommand.run)r$   r%   r&   r   r   r#   r'   r   r   )r   r   r@   š   s   r@   c                   s$   e Zd Z‡ fdd„Zdd„ Z‡  ZS )ÚCleanCompletionCommandc                s   t t| ƒj|ƒ d S )N)r   rA   r   )r   r   )r   r   r   r   ©   s    zCleanCompletionCommand.__init__c             C   s0   t jjjjjƒ }tdjt| j	j
d |ƒƒƒ d S )Nr-   r,   )Údnfr   ÚcommandsÚcleanZ_CACHE_TYPESÚkeysr!   r0   r
   r   Útype)r   r1   r   r   r   r#   ¬   s    zCleanCompletionCommand.run)r$   r%   r&   r   r#   r'   r   r   )r   r   rA   ¨   s   rA   c             C   sì   t jjjƒ }t jj|ƒ}| d dkrP|jg g |ƒ tdjt| d |jƒƒƒ d S |jj	ƒ  |j
tƒ |j
tƒ |j
tƒ |j
tƒ |j
tƒ |j
tƒ |j
tƒ |j
tƒ |j| ƒ y|jƒ  W n& tt jjfk
ræ   tjdƒ Y nX d S )Nr   Z_cmdsr-   r,   )rB   r   ZBaseCliZCliZinit_pluginsr!   r0   r
   Zcli_commandsÚclearZregister_commandr   r(   r+   r   r:   r?   r@   rA   r   r#   ÚOSErrorÚ
exceptionsÚErrorÚsysÚexit)r   r   r   r   r   r   Úmain±   s(    









rM   Ú__main__r,   )%Zdnf.exceptionsrB   Zdnf.cliZdnf.cli.commands.cleanrK   r
   r   r   rC   ÚremoveZRemoveCommandr   ZinstallZInstallCommandr(   Z	reinstallZReinstallCommandr+   ZListCommandr   ZrepolistZRepoListCommandr:   ZupgradeZUpgradeCommandr?   Z	downgradeZDowngradeCommandr@   rD   ZCleanCommandrA   rM   r$   ÚargvÚKeyboardInterruptrL   r   r   r   r   Ú<module>   s&   (	
