From 6a11290abfeb2295a58195310f75ef765c2007d8 Mon Sep 17 00:00:00 2001 From: Magnus Hagander Date: Fri, 6 Jul 2012 17:20:04 +0200 Subject: Support filtering a single email out of mbox/directory for reloading --- loader/lib/parser.py | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'loader/lib/parser.py') diff --git a/loader/lib/parser.py b/loader/lib/parser.py index c2598ba..6886723 100644 --- a/loader/lib/parser.py +++ b/loader/lib/parser.py @@ -19,6 +19,15 @@ class ArchivesParser(object): def parse(self, stream): self.msg = self.parser.parse(stream) + def is_msgid(self, msgid): + # Look for a specific messageid. This means we might parse it twice, + # but so be it. Any exception means we know it's not this one... + try: + if self.clean_messageid(self.decode_mime_header(self.get_mandatory('Message-ID'))) == msgid: + return True + except Exception, e: + return False + def analyze(self, date_override=None): self.msgid = self.clean_messageid(self.decode_mime_header(self.get_mandatory('Message-ID'))) self._from = self.decode_mime_header(self.get_mandatory('From')) -- cgit v1.2.3