diff options
Diffstat (limited to 'service/pixelated')
-rw-r--r-- | service/pixelated/adapter/listeners/mailbox_indexer_listener.py | 9 | ||||
-rw-r--r-- | service/pixelated/bitmask_libraries/session.py | 13 |
2 files changed, 11 insertions, 11 deletions
diff --git a/service/pixelated/adapter/listeners/mailbox_indexer_listener.py b/service/pixelated/adapter/listeners/mailbox_indexer_listener.py index 74b4f5af..97a887f4 100644 --- a/service/pixelated/adapter/listeners/mailbox_indexer_listener.py +++ b/service/pixelated/adapter/listeners/mailbox_indexer_listener.py @@ -27,9 +27,8 @@ class MailboxIndexerListener(object): @defer.inlineCallbacks def listen(cls, account, mailbox_name, mail_store, search_engine): listener = MailboxIndexerListener(mailbox_name, mail_store, search_engine) - if listener not in (yield account.getMailbox(mailbox_name)).listeners: - mbx = yield account.getMailbox(mailbox_name) - mbx.addListener(listener) + mail_collection = yield account.get_collection_by_mailbox(mailbox_name) + mail_collection.addListener(listener) defer.returnValue(listener) @@ -39,7 +38,7 @@ class MailboxIndexerListener(object): self.search_engine = search_engine @defer.inlineCallbacks - def newMessages(self, exists, recent): + def notify_new(self): try: indexed_idents = set(self.search_engine.search('tag:' + self.mailbox_name.lower(), all_mails=True)) soledad_idents = yield self.mail_store.get_mailbox_mail_ids(self.mailbox_name) @@ -63,6 +62,6 @@ class MailboxIndexerListener(object): @defer.inlineCallbacks def listen_all_mailboxes(account, search_engine, mail_store): - mailboxes = yield account.account.list_all_mailbox_names() + mailboxes = yield account.list_all_mailbox_names() for mailbox_name in mailboxes: yield MailboxIndexerListener.listen(account, mailbox_name, mail_store, search_engine) diff --git a/service/pixelated/bitmask_libraries/session.py b/service/pixelated/bitmask_libraries/session.py index ae3eb992..d575a9c6 100644 --- a/service/pixelated/bitmask_libraries/session.py +++ b/service/pixelated/bitmask_libraries/session.py @@ -24,7 +24,7 @@ from twisted.internet import reactor, defer from pixelated.bitmask_libraries.certs import LeapCertificate from pixelated.adapter.mailstore import LeapMailStore from leap.mail.incoming.service import IncomingMail -from leap.mail.imap.account import IMAPAccount +from leap.mail.mail import Account from leap.auth import SRPAuth from .nicknym import NickNym from .smtp import LeapSMTPConfig @@ -73,7 +73,7 @@ class LeapSession(object): @defer.inlineCallbacks def after_first_sync(self): yield self.nicknym.generate_openpgp_key() - self.account = self._create_account(self.account_email, self.soledad) + yield self._create_account(self.soledad) self.incoming_mail_fetcher = yield self._create_incoming_mail_fetcher( self.nicknym, self.soledad, @@ -81,8 +81,9 @@ class LeapSession(object): self.account_email()) reactor.callFromThread(self.incoming_mail_fetcher.startService) - def _create_account(self, user_mail, soledad): - return IMAPAccount(user_mail, soledad, defer.Deferred()) + def _create_account(self, soledad): + self.account = Account(soledad) + return self.account.deferred_initialization def _set_fresh_account(self, event, email_address): log.debug('Key for email %s has been generated' % email_address) @@ -115,10 +116,10 @@ class LeapSession(object): @defer.inlineCallbacks def _create_incoming_mail_fetcher(self, nicknym, soledad, account, user_mail): - inbox = yield account.callWhenReady(lambda _: account.getMailbox('INBOX')) + inbox = yield account.callWhenReady(lambda _: account.get_collection_by_mailbox('INBOX')) defer.returnValue(IncomingMail(nicknym.keymanager, soledad, - inbox.collection, + inbox, user_mail)) def stop_background_jobs(self): |