Spamworldpro Mini Shell
Spamworldpro


Server : Apache/2.4.62 (Unix) OpenSSL/1.0.2k-fips
System : Linux server1.richineiserver.com 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64
User : fdshops ( 1003)
PHP Version : 8.2.21
Disable Function : NONE
Directory :  /lib/python2.7/site-packages/offlineimap/repository/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //lib/python2.7/site-packages/offlineimap/repository/Maildir.pyo
�
��Vc@spddlmZddlmZddlmZddlmZddlZddl	Tdefd��YZ
dS(	i����(tfolder(tgetglobalui(tOfflineImapError(tBaseRepositoryN(t*tMaildirRepositorycBs�eZd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zdd
�Z
d�Zd�Zd
�ZRS(cCs�tj|||�|j�|_d|_t�|_|jdt	|j
���g|_tj
j|j�s�tj|jd�nt�|_xFdD]>}d|}|j|d�}|dk	r�||j|<q�q�WdS(swInitialize a MaildirRepository object.  Takes a path name
        to the directory holding all the Maildir directories.s(MaildirRepository initialized, sep is %si�tabcdefghijklmnopqrstuvwxyztcustomflag_N(Rt__init__tgetlocalroottroottNonetfoldersRtuitdebugtreprtgetsept
folder_atimestostpathtisdirtmkdirtdicttkeyword2chartgetconf(tselft	reposnametaccounttctconfkeytkeyword((sB/usr/lib/python2.7/site-packages/offlineimap/repository/Maildir.pyRs		

cCs}tjj|j|�}tjj|d�}tjj|d�}|tjj|�tjj|�f}|jj|�dS(s<Store the atimes of a folder's new|cur in self.folder_atimestnewtcurN(RRtjoinR
tgetatimeRtappend(Rt
foldernametpRR tatimes((sB/usr/lib/python2.7/site-packages/offlineimap/repository/Maildir.pyt_append_folder_atimes2s
'cCs�|jdt�sdSx�|jD]}\}}}tjj|d�}tjj|d�}tj||tjj|�f�tj||tjj|�f�q WdS(sqSets folders' atime back to their values after a sync

        Controlled by the 'restoreatime' config parameter.trestoreatimeNRR (tgetconfbooleantFalseRRRR!tutimetgetmtime(Rtdirpatht	new_atimet	cur_atimetnew_dirtcur_dir((sB/usr/lib/python2.7/site-packages/offlineimap/repository/Maildir.pyt
restore_atime;s"cCstjjg}|jd|�S(Ntlocalfolders(RRt
expandusert
getconf_xform(Rtxforms((sB/usr/lib/python2.7/site-packages/offlineimap/repository/Maildir.pyR	IscCs|jjd|�dS(Ntmaildir(R
R(Rtmsg((sB/usr/lib/python2.7/site-packages/offlineimap/repository/Maildir.pyRMscCs|jdd�j�S(Ntsept.(Rtstrip(R((sB/usr/lib/python2.7/site-packages/offlineimap/repository/Maildir.pyRPscCs t|j�dkr|jSdS(Ni(tlenRR(R((sB/usr/lib/python2.7/site-packages/offlineimap/repository/Maildir.pyt
getkeywordmapSscCs~|jj||�|jjr#dStjjtjj|j|��}|j	�dkrvx|j
d�D]}qiWn|jd|�ytj|d�WnKt
k
r�}|jdkr�tjj|�r�|jd|�q��nXx�ddd	gD]}}y#tjtjj||�d�Wq�t
k
ru}|jdkrotjj|�ro|jd
||f�qv�q�Xq�WdS(sCreate new Maildir folder if necessary

        This will not update the list cached in getfolders(). You will
        need to invoke :meth:`forgetfolders` to force new caching when
        you are done creating folders yourself.

        :param foldername: A relative mailbox name. The maildir will be
            created in self.root+'/'+foldername. All intermediate folder
            levels will be created if they do not exist yet. 'cur',
            'tmp', and 'new' subfolders will be created in the maildir.
        Nt/s!makefolder: calling makedirs '%s'i�is$makefolder: '%s' already a directoryR Rttmps&makefolder: '%s' already has subdir %s(R
t
makefolderRtdryrunRRtabspathR!R
RtsplitRtmakedirstOSErrorterrnoRR(RR$t	full_patht	componenttetsubdir((sB/usr/lib/python2.7/site-packages/offlineimap/repository/Maildir.pyR@Vs,
$!#!	cCs|jjd|�dS(Ns%NOT YET IMPLEMENTED: DELETE FOLDER %s(R
twarn(RR$((sB/usr/lib/python2.7/site-packages/offlineimap/repository/Maildir.pytdeletefolder�scCsM|j�}x!|D]}||jkr|SqWtd|tjj��dS(s�Return a Folder instance of this Maildir

        If necessary, scan and cache all foldernames to make sure that
        we only return existing folders and that 2 calls with the same
        name will return the same object.s0getfolder() asked for a nonexisting folder '%s'.N(t
getfolderstnameRtERRORtFOLDER(RR$Rtf((sB/usr/lib/python2.7/site-packages/offlineimap/repository/Maildir.pyt	getfolder�s
c
	Csd|jd||f�g}|r;tjj||�}n|}|jd|�x�tj|�dgD]�}|jd|�|dkr�|dk	r�|jd�qin|dkr�|jd	�qintjj||�}tjj|�s|jd
�qin|r"tjj||�}n|}tjjtjj|d��r�tjjtjj|d��r�tjjtjj|d��r�|jd|�|jdt�r�|j	|�n|j
�|j||j�|�}|j
|�n|j�d
kri|dkri|j|j||��qiqiW|jdtg|D]}	|	j�^qC��|S(s�Recursively scan folder 'root'; return a list of MailDirFolder

        :param root: (absolute) path to Maildir root
        :param extension: (relative) subfolder to examine within roots7_GETFOLDERS_SCANDIR STARTING. root = %s, extension = %ss  toppath = %sts  dirname = %ss#  skip this entry (already scanned)R RR?s#  skip this entry (Maildir special)s#  skip this entry (not a directory)s  This is maildir folder '%s'.R(R>s _GETFOLDERS_SCANDIR RETURNING %sN(scursnewstmp(RRRR!tlistdirRRR)R*R't
getfoldertypeR
RR#textendt_getfolders_scandirRtgetname(
RR
t	extensiontretvalttoppathtdirnametfullnameR$tfdtx((sB/usr/lib/python2.7/site-packages/offlineimap/repository/Maildir.pyRW�sH	


!!! 	'cCs.|jdkr'|j|j�|_n|jS(N(RRRWR
(R((sB/usr/lib/python2.7/site-packages/offlineimap/repository/Maildir.pyRM�scCs
tjjS(N(RtMaildirt
MaildirFolder(R((sB/usr/lib/python2.7/site-packages/offlineimap/repository/Maildir.pyRU�scCs
d|_dS(sTForgets the cached list of folders, if any.  Useful to run
        after a sync run.N(RR(R((sB/usr/lib/python2.7/site-packages/offlineimap/repository/Maildir.pyt
forgetfolders�sN(t__name__t
__module__RR'R2R	RRR=R@RLRRRRWRMRURb(((sB/usr/lib/python2.7/site-packages/offlineimap/repository/Maildir.pyRs									/		8		(tofflineimapRtofflineimap.uiRtofflineimap.errorRtofflineimap.repository.BaseRRtstatR(((sB/usr/lib/python2.7/site-packages/offlineimap/repository/Maildir.pyt<module>s


Spamworldpro Mini