From d0ae96039273ecc0c1d06f76209484ae420431f8 Mon Sep 17 00:00:00 2001 From: Victor Shyba Date: Mon, 24 Aug 2015 20:49:31 -0300 Subject: [bug] adapt MailboxIndexer to mail_store -- Issue #439 --- .../adapter/listeners/mailbox_indexer_listener.py | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) (limited to 'service/pixelated/adapter/listeners/mailbox_indexer_listener.py') diff --git a/service/pixelated/adapter/listeners/mailbox_indexer_listener.py b/service/pixelated/adapter/listeners/mailbox_indexer_listener.py index 3af4e62e..ce056a3c 100644 --- a/service/pixelated/adapter/listeners/mailbox_indexer_listener.py +++ b/service/pixelated/adapter/listeners/mailbox_indexer_listener.py @@ -24,23 +24,25 @@ class MailboxIndexerListener(object): @classmethod @defer.inlineCallbacks - def listen(cls, account, mailbox_name, soledad_querier): - listener = MailboxIndexerListener(mailbox_name, soledad_querier) + def listen(cls, account, mailbox_name, mail_store): + listener = MailboxIndexerListener(mailbox_name, mail_store) if listener not in (yield account.getMailbox(mailbox_name)).listeners: mbx = yield account.getMailbox(mailbox_name) mbx.addListener(listener) - def __init__(self, mailbox_name, soledad_querier): + def __init__(self, mailbox_name, mail_store): self.mailbox_name = mailbox_name - self.querier = soledad_querier + self.mail_store = mail_store + @defer.inlineCallbacks def newMessages(self, exists, recent): indexed_idents = set(self.SEARCH_ENGINE.search('tag:' + self.mailbox_name.lower(), all_mails=True)) - soledad_idents = self.querier.idents_by_mailbox(self.mailbox_name) + soledad_idents = yield self.mail_store.get_mailbox_mail_ids(self.mailbox_name) + soledad_idents = set(soledad_idents) missing_idents = soledad_idents.difference(indexed_idents) - self.SEARCH_ENGINE.index_mails(self.querier.mails(missing_idents)) + self.SEARCH_ENGINE.index_mails((yield self.mail_store.get_mails(missing_idents))) def __eq__(self, other): return other and other.mailbox_name == self.mailbox_name -- cgit v1.2.3