3
¤”ÃZí  ã               @   s4   d dl mZ ddlT d dlmZ G dd„ deƒZdS )é    )ÚGtké   )Ú*)Úreducec               @   s   e Zd Zdd„ Zdd„ ZdS )ÚErrorLogParsec             C   sp   t j| |dƒ | jtdƒtdƒƒ}tjƒ }tjƒ }|jdƒ |j|ƒ |j	|dddƒ |j
ƒ | _|j|| ƒ d S )NzError log parsezError log messagesz$There are messages in the error log.FTr   )ÚQuestionÚ__init__Zinitial_vboxÚ_r   ZScrolledWindowZTextViewZset_editableÚaddZ
pack_startZ
get_bufferÚbufferZnew_page)ÚselfÚtroubleshooterZpageÚswZtextview© r   ú>/usr/share/system-config-printer/troubleshoot/ErrorLogParse.pyr      s    




zErrorLogParse.__init__c             C   sª   | j j}y|jdƒ}|jdƒ}W n tk
r4   dS X d}|r^x|D ]}|d dkrD|}P qDW |rˆ| rˆx|D ]}|d dkrn|}P qnW |r¢| jjtdd„ |ƒƒ |dkS )NÚjournalÚ	error_logFr   ÚEc             S   s   | d | S )NÚ
r   )ÚxÚyr   r   r   Ú<lambda>@   s    z'ErrorLogParse.display.<locals>.<lambda>)r   ÚanswersÚgetÚKeyErrorr   Zset_textr   )r   r   r   r   ÚdisplayÚliner   r   r   r   *   s*    



zErrorLogParse.displayN)Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   r   r      s   r   N)Zgi.repositoryr   ÚbaseÚ	functoolsr   r   r   r   r   r   r   Ú<module>   s   