
    Zd                     X    d dl Z d dlZd dlZd dlZd dlmZ d dlmZ  G d d          ZdS )    N)Rixer)Folderc                   *    e Zd ZddZd ZddZd ZdS )	KoselFc                     || _         | j         j        d         | _        t          |d          r| j         j        | _        n|| _        t          |          | _        t          |          | _        d S )Nkosel
do_verbose)	edirs
kosel_fudihasattrr	   r   folderr   rixer)selferimpr	   s      !/home/ernad/ernad/python/kosel.py__init__zKosel.__init__   sa    &+g.5,'' 	)"f/DOO(DOUmm5\\
 t    c                     t          | j                   | j        dz   }t          t          j        |          d          }i }|D ].}t          j                            |          dd         }|||<   /|S )zcopied from clarf
/*.json.gzT)reverseN
   )printr   sortedglobospathbasename)r   glob_string	out_fufisdatfisfufi	issuedates         r   
get_datfiszKosel.get_datfis   s~    dkkL049[114@@@	 	% 	%D((..ss3I $F9r   Nc                    |$|"t          d           t          j                     |(| j        j        D ]}|                     ||           d S |(| j        j        D ]}|                     ||           d S | j        j        |         j        d         }| j        	                    ||          }|st          d| d|            dS | j
                            |          }i }| j        j        d         dz   |z   d	z   }t          j                            |          rt          j        |          }|D ]/}| j        rt          d
|            ||vri ||<   d||         |<   0t          j        ||           dS )Nzkosel can't handle this yet)r#   repcodeselectedzkosel: no selected file for z at Fr   /.json.gzzkosel sees    T)r   sysexitr
   
issuedatesupdatereportr   r   last_by_issuedater   docsr   r   isfilefilerloadr	   dump)	r   r#   r&   in_fudir"   	text_elesdataout_fufidocids	            r   r.   zKosel.update$   s   /000HJJJ!V. B B	iAAAAF?6= B BiAAAAF&-(-j9{,,Wi@@ 	IIIiIIJJJ5JOOD))	6;w'#-	9JF7>>(## 	(:h''D 	% 	%E -+E++,,,D   U#$DK  
4"""tr   c                    ddl m}  || j                  }|                                }| j        j        d         dz   }i }t          j        |          D ]s}t          j                            |          }|dd         }||vr1| j	        dz   |z   dz   }	t          j        |	          }
i }|
D ]Z}|
|         D ]O}||vri ||<   |
|         D ];}||k     r	||k    r|||         vrd||         |<   ||         |xx         d	z  cc<   <P[t          |          D ]5}t          ||                   D ]}||         |         d	k    r	||         |= 6t          |          D ]}t          ||                   dk    r||= g ||<   t          |          D ]7}t          ||                   D ]}||                             ||g            8u|S )
z6list issuedates, and report pairs with one common itemr   )Ralilr   r   Nr   r(   r)   r*   )ralilr<   r
   	get_datesr   r   r   r   r   r   r3   r4   listlenappend)r   r<   r=   ralil_issuedatesr   pairsr"   banar#   	data_fufir8   relsr:   r1r2r&   s                   r   get_singletonszKosel.get_singletonsC   sS   df ??,,fk'*\9Ik** 	6 	6D7##D))DSbS	I 000#-	9JFI:i((DD * *u+ 
* 
*B~~#%R"5k * *77$88$T"X--+,DHRLR)*
* 4jj ) )tBx.. ) )BBx|q(( HRL)  :: & &tG}%%**W!E)4jj 6 6tBx.. 6 6B)$++RH555566 r   )F)NN)__name__
__module____qualname__r   r$   r.   rI    r   r   r   r   	   sZ           	 	 	   >' ' ' ' 'r   r   )	r   r   r+   r3   r   r   r   r   r   rM   r   r   <module>rN      s     				 



             a a a a a a a a a ar   