o
    8a<
                     @   s>   d dl Z d dlZd dlZd dlZd dlmZ G dd dZdS )    N)Kriktc                   @   sH   e Zd Zdd ZdddZdd Zddd	Zd
d Zdd Zdd Z	dS )Inkric                 C   sN   || _ t| j | _d| _| jd | _i | _t|dr|j| _| j jd | _	d S )Nz.inkri.jsonz.gz
do_verbosefitli)
er   krikt	ext_no_gzextihasattrr   dirsfolder)selferimp r   !/home/ernad/ernad/python/inkri.py__init__   s   
zInkri.__init__Fc                 C   s   | j  }d}|D ]}tj|}|dd }||kr|}| || q	| jd | | j }td|  t	
|| j | | dS )z#-> makes update for all krikt files r   
   /zinkri writes N)r   	out_fufisospathbasenameupdate_for_fufir   r	   printfilerdumpr
   remove_other_than)r   r   krikt_fufismax_issuedatefufibana	issuedateout_fufir   r   r   
update_all   s   
zInkri.update_allc                 C   s    i }|D ]	}|  |||< q|S )(prime function for consumers of the data)
lookup_one)r   papidsoutpapidr   r   r   lookup)   s   zInkri.lookupc                 C   s\   t | jdkr|   || jvrtd| tjd dS | j| }|r,td| d |  |S )r&   r   zinkri does not see )fileNzinkri finds z at )lenr
   loadr   sysstderr)r   r*   r   r#   r   r   r   r'   0   s   

zInkri.lookup_onec                 C   sP   | j rtd| dddd t|}| j rtddd |D ]}|| j|< qd S )Ninkri loads  ... r   Tendflushdoner5   )r   r   r   r.   r
   )r   r!   r#   dr*   r   r   r   r   <   s   
zInkri.update_for_fufic                 C   sD   | j d | j }t|D ]}||krqtd|  t| qd S )Nz/*zinkri removes )r   r	   globr   r   remove)r   r$   glob_stringr!   r   r   r   r   E   s   zInkri.remove_other_thanc                 C   s^   d| j  }| jjj| j|d}| jrtd| dddd t|| _	| jr,tddd	 | j	S )
N*)searchr1   r2   r   Tr3   r6   r7   )
r	   r   r8   last_by_mtimer   r   r   r   r.   r
   )r   r=   	last_fufir   r   r   r.   M   s   
z
Inkri.loadN)F)
__name__
__module____qualname__r   r%   r+   r'   r   r   r.   r   r   r   r   r      s    

	r   )r9   r   r/   r   r   r   r   r   r   r   r   <module>   s   