def _new2cur (self, m) : join = sos.path.join path = self.path s = join (path, "new", m.name) t = m.path = join (path, "cur", m.name) sos.link (s, t) sos.unlink (s) m.email._pma_dir = "cur"
def _copy_msg_file (self, message, target) : source = message.path try : sos.link (source, target) except OSError as exc : if exc.args [0] != errno.EXDEV : print (source, target) raise self.__super._copy_msg_file (message, target)
def download_pop (self, server, mdir) : md_name = PMA._Mailbox_.md_name result = 0 for msg_no, msg_size in self.pop_list (server) : email = self._new_email ("\n".join (server.retr (msg_no) [1])) name = md_name () tname = sos.path.join (mdir.path, "tmp", name) nname = sos.path.join (mdir.path, "new", name) PMA.save (tname, email.as_string ()) sos.link (tname, nname) sos.unlink (tname) server.dele (msg_no) result += 1 if self.finish : break return result