Ë
    ojw  ã                   óÀ   — d dl Z d dlmZ  G d„ dej                  «      Z G d„ dej                  «      Z G d„ dej                  «      Z G d	„ d
ej                  «      Zy)é    N)Úpbc                   ój   — e Zd Zd„ Zd„ Zd„ Zd„ ZeZd„ ZeZ	d„ Z
e
Zd„ ZeZd„ ZeZd	„ ZeZd
„ ZeZd„ Zy)ÚMaildirc                 ój   — || _         || _        t        j                  j	                  ||«      | _        y ©N)ÚvirtualDirectoryÚrootDirectoryÚosÚpathÚjoinÚ	directory)Úselfr   r	   s      ú1/usr/lib/python3/dist-packages/twisted/mail/pb.pyÚ__init__zMaildir.__init__   s(   € Ø )ˆÔØ*ˆÔÜŸ™Ÿ™ m°YÓ?ˆ�ó    c                 óÚ   — d|v rt        d|z  «      ‚t        t        j                  j	                  | j
                  d|«      «      5 }|j                  «       cd d d «       S # 1 sw Y   y xY w)Nú/z&can only open files in '%s' directory'Únew)ÚOSErrorÚopenr
   r   r   r   Úread)r   ÚfolderÚnameÚfps       r   ÚgetFolderMessagezMaildir.getFolderMessage   sW   € Ø�$‰;ÜÐBÀVÑKÓLÐLÜ”"—'‘'—,‘,˜tŸ~™~¨u°dÓ;Ó<ð 	ÀØ—7‘7“9÷	÷ 	ò 	ús   ÁA!Á!A*c           	      óú   — d|v rt        d|z  «      ‚t        j                  t        j                  j	                  | j
                  ||«      t        j                  j	                  | j                  d||«      «       y )Nr   z(can only delete files in '%s' directory'z.Trash)r   r
   Úrenamer   r   r   r	   )r   r   r   s      r   ÚdeleteFolderMessagezMaildir.deleteFolderMessage   sZ   € Ø�$‰;ÜÐDÀvÑMÓNÐNÜ
�	‰	Ü�G‰G�L‰L˜Ÿ™¨°Ó6Ü�G‰G�L‰L˜×+Ñ+¨X°v¸tÓDõ	
r   c                 ó&   — | j                  d|«      S ©Nr   ©r   ©r   r   s     r   ÚdeleteNewMessagezMaildir.deleteNewMessage   ó   € Ø×'Ñ'¨¨tÓ4Ð4r   c                 ó&   — | j                  d|«      S ©NÚcurr!   r"   s     r   ÚdeleteCurMessagezMaildir.deleteCurMessage#   r$   r   c                 ó|   — t        j                  t         j                  j                  | j                  d«      «      S r    ©r
   Úlistdirr   r   r   ©r   s    r   ÚgetNewMessageszMaildir.getNewMessages(   ó$   € Ü�z‰zœ"Ÿ'™'Ÿ,™, t§~¡~°uÓ=Ó>Ð>r   c                 ó|   — t        j                  t         j                  j                  | j                  d«      «      S r&   r*   r,   s    r   ÚgetCurMessageszMaildir.getCurMessages-   r.   r   c                 ó&   — | j                  d|«      S r    ©r   r"   s     r   ÚgetNewMessagezMaildir.getNewMessage2   ó   € Ø×$Ñ$ U¨DÓ1Ð1r   c                 ó&   — | j                  d|«      S r&   r2   r"   s     r   ÚgetCurMessagezMaildir.getCurMessage7   r4   r   c                 óþ   — |d   dk(  rt        d«      ‚|j                  dd«      }| j                  dk(  rd|z   }n| j                  dz   |z   }| j	                  |«      st        d«      ‚t        || j                  «      S )Nr   ú.z&subfolder name cannot begin with a '.'r   ú:znot a subfolder)r   ÚreplaceÚvirtualDirectoyr   Ú_isSubFolderr   r	   r"   s     r   ÚgetSubFolderzMaildir.getSubFolder<   s‚   € Ø�‰7�cŠ>ÜÐBÓCÐCØ�|‰|˜C Ó%ˆØ×Ñ 3Ò&Ø˜‘:‰Dà×(Ñ(¨3Ñ.°Ñ5ˆDØ× Ñ  Ô&ÜÐ+Ó,Ð,Ü�t˜T×/Ñ/Ó0Ð0r   c                 ó(  — t         j                  j                  t         j                  j                  | j                  |«      «       xsI t         j                  j                  t         j                  j                  | j                  |d«      «       S )NÚmaildirfolder)r
   r   Úisdirr   r	   Úisfiler"   s     r   r<   zMaildir._isSubFolderJ   se   € Ü—7‘7—=‘=Ü�G‰G�L‰L˜×+Ñ+¨TÓ2ó
ð 
ò Yä—‘—‘¤§¡§¡¨T×-?Ñ-?ÀÀÓ WÓXÐXð	Yr   N)Ú__name__Ú
__module__Ú__qualname__r   r   r   r#   Úremote_deleteNewMessager(   Úremote_deleteCurMessager-   Úremote_getNewMessagesr0   Úremote_getCurMessagesr3   Úremote_getNewMessager6   Úremote_getCurMessager=   Úremote_getSubFolderr<   © r   r   r   r   
   ss   „ ò@ò
ò
ò5ð /Ðò5ð /Ðò?ð +Ðò?ð +Ðò2ð )Ðò2ð )Ðò
1ð 'ÐóYr   r   c                   ó&   — e Zd Zd„ Zd„ ZeZd„ ZeZy)ÚMaildirCollectionc                 ó   — || _         y r   )Úroot)r   rP   s     r   r   zMaildirCollection.__init__Q   s	   € Øˆ�	r   c                 óH   — t        j                  | j                  «       «      S r   )r
   r+   ÚgetRootr,   s    r   ÚgetSubFolderszMaildirCollection.getSubFoldersT   s   € Ü�z‰z˜$Ÿ,™,›.Ó)Ð)r   c                 ó    — d|v s|d   dk(  rt        d«      ‚t        dt        j                  j	                  | j                  «       |«      «      S )Nr   r   r8   zinvalid name)r   r   r
   r   r   rR   r"   s     r   r=   zMaildirCollection.getSubFolderY   s@   € Ø�$‰;˜$˜q™' Sš.Ü˜.Ó)Ð)Ü�sœBŸG™GŸL™L¨¯©«¸Ó>Ó?Ð?r   N)rB   rC   rD   r   rS   Úremote_getSubFoldersr=   rK   rL   r   r   rN   rN   P   s"   „ òò*ð )Ðò@ð
 'Ñr   rN   c                   ó   — e Zd Zd„ Zd„ Zy)ÚMaildirBrokerc                 ór   — | j                  «       }|€| j                  |d«       y | j                  ||«       y )Nzpermission denied)Ú_getCollectionÚ	sendErrorÚ
sendAnswer)r   Ú	requestIDr   ÚdomainÚpasswordÚ
collections         r   Úproto_getCollectionz!MaildirBroker.proto_getCollectionb   s3   € Ø×(Ñ(Ó*ˆ
ØÐØ�N‰N˜9Ð&9Õ:à�O‰O˜I zÕ2r   c                 ó¶   — || j                   vry | j                   |   }||j                  v r-|j                  |   |k(  rt        |j                  |«      «      S y y r   )ÚdomainsÚdbmrN   ÚuserDirectory)r   r   r]   r^   s       r   ÚgetCollectionzMaildirBroker.getCollectioni   sY   € Ø˜Ÿ™Ñ%ØØ—‘˜fÑ%ˆØ�6—:‘:Ñ &§*¡*¨TÑ"2°hÒ">Ü$ V×%9Ñ%9¸$Ó%?Ó@Ð@ð #?Ðr   N)rB   rC   rD   r`   re   rL   r   r   rW   rW   a   s   „ ò3óAr   rW   c                   ó   — e Zd Zd„ Zy)ÚMaildirClientc                 óp   — | j                  «       }||f| j                  |<   | j                  d||||«       y )Nre   )ÚnewRequestIDÚwaitingForAnswersÚsendCall)r   r   r]   r^   ÚcallbackÚerrbackr\   s          r   re   zMaildirClient.getCollectionr   s9   € Ø×%Ñ%Ó'ˆ	Ø,4°gÐ,=ˆ×Ñ˜yÑ)Ø�‰�o y°$¸ÀÕIr   N)rB   rC   rD   re   rL   r   r   rg   rg   q   s   „ óJr   rg   )	r
   Útwisted.spreadr   ÚReferenceabler   rN   ÚBrokerrW   rg   rL   r   r   ú<module>rq      sZ   ðó
 
å ôCYˆb×Ñô CYôL'˜×(Ñ(ô 'ô"A�B—I‘Iô Aô J�B—I‘Iõ Jr   