a
    éÿÿaz  ã                   @   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)ÚPapidc                   @   s(   e Zd Zdd„ Zd	dd„Zd
dd„ZdS )ÚPlumic                 C   s   || _ tƒ | _d S )N)Úer   Úpapid)ÚselfÚerimp© r   ú!/home/ernad/ernad/python/plumi.pyÚ__init__   s    zPlumi.__init__Fc                 C   s  | j }||jvr td| ƒ dS |j| }|jd }|jd }|jd }|jd }t|j |¡ ¡ ƒ}	|j |¡}
|j |¡}tj	 
|¡s”t |¡ |
D ]v}|
| }||	vr¼t|d ƒ q˜||v rÎ|| }njd|› d	}|d
|› 7 }d|jvr.t|dƒs| ¡  |j}||v r"|| }n
t|ƒ q˜n
t|ƒ q˜|jd d | d }||g}t ||¡sfq˜| j |¡}| j |¡}g }g }|D ]&}||v r¤| |¡ n
| |¡ qŠd}|D ]}|d| d 7 }qº|D ]}|d| d 7 }qÖt |d¡}| | ¡ ¡ | ¡  q˜dS )zupdate for a reportúI don't know your report FÚplumiÚselectedÚsentÚsourcez is not sent.z$plumi has no source for selected at ú z at ÚtruncateÚissuesú/z.txt.gzÚ z+1 Ú
z-1 ÚwbN)r   ÚreportÚprintÚdirsÚlistÚdÚlastsÚkeysÚosÚpathÚisdirÚmakedirsÚconfÚhasattrÚfill_issuesr   ÚfilerÚdonerer   ÚreadÚappendÚgzipÚopenÚwriteÚencodeÚclose)r   ÚrepcodeÚ
do_verboser   r   Ú	plumi_dirZ
select_dirÚsent_dirZ
source_dirZknown_issuedatesZselect_dafusZsource_dafusZselect_dateZselect_fufiZsource_fufiÚerrZissue_dafusÚ
plumi_fufiZinput_fufisZsource_papidsZselect_papidsZplusesZminussr   ÚstringÚ
plumi_filer   r   r	   Úupdate   sj    











zPlumi.updatec           
      C   sŠ   | j }||jvr td| ƒ dS |j| }|jd }i }tj |¡sN|  |¡ tt	 	|d ¡ƒD ]$}tj 
|¡}|dd… }	|||	< q`|S )z return the list of normal plumisr   Fr   z/*.gzr   é
   )r   r   r   r   r   r   r    r6   ÚsortedÚglobÚbasename)
r   r.   r/   r   r   r0   ÚoutÚfufiÚbanaÚ	issuedater   r   r	   ÚfufisS   s    




zPlumi.fufisN)F)F)Ú__name__Ú
__module__Ú__qualname__r
   r6   r?   r   r   r   r	   r      s   
?r   )r9   r)   r   r%   r   r   r   r   r   r   r	   Ú<module>   s
   