def get_emails(self, mailinglist_dir, all, exclude_lists):
        """Generator function that get the emails from each mailing
        list dump dirctory. If `all` is set to True all the emails in the
        mbox will be imported if not it will just resume from the last
        message previously imported. The lists set in `exclude_lists`
        won't be imported.

        Yield: A tuple in the form: (mailing list name, email message).

        """
        self.log("Getting emails dumps from: %s" % mailinglist_dir)

        # Get the list of directories ending with .mbox
        mailing_lists_mboxes = (mbox for mbox in os.listdir(mailinglist_dir)
                                if mbox.endswith('.mbox'))

        # Get messages from each mbox
        for mbox in mailing_lists_mboxes:
            mbox_path = os.path.join(mailinglist_dir, mbox, mbox)
            mailinglist_name = mbox.split('.')[0]

            # Check if the mailinglist is set not to be imported
            if exclude_lists and mailinglist_name in exclude_lists:
                continue

            # Find the index of the last imported message
            if all:
                n_msgs = 0
            else:
                try:
                    mailinglist = MailingList.objects.get(
                        name=mailinglist_name
                    )
                    n_msgs = mailinglist.last_imported_index
                except MailingList.DoesNotExist:
                    n_msgs = 0

            for index, msg in self.parse_emails(mbox_path, n_msgs):
                yield mailinglist_name, msg, index
def get_emails ( self , mailinglist_dir , all , exclude_lists ) : self . log ( "Getting emails dumps from: %s" % mailinglist_dir ) mailing_lists_mboxes = ( mbox for mbox in os . listdir ( mailinglist_dir ) if mbox . endswith ( '.mbox' ) ) for mbox in mailing_lists_mboxes : mbox_path = os . path . join ( mailinglist_dir , mbox , mbox ) mailinglist_name = mbox . split ( '.' ) [ 0 ] if exclude_lists and mailinglist_name in exclude_lists : continue if all : n_msgs = 0 else : try : mailinglist = MailingList . objects . get ( name = mailinglist_name ) n_msgs = mailinglist . last_imported_index except MailingList . DoesNotExist : n_msgs = 0 for index , msg in self . parse_emails ( mbox_path , n_msgs ) : yield mailinglist_name , msg , index
Generator function that get the emails from each mailing
        list dump dirctory. If `all` is set to True all the emails in the
        mbox will be imported if not it will just resume from the last
        message previously imported. The lists set in `exclude_lists`
        won't be imported.

        Yield: A tuple in the form: (mailing list name, email message).