summaryrefslogtreecommitdiff
path: root/service/pixelated
diff options
context:
space:
mode:
Diffstat (limited to 'service/pixelated')
-rw-r--r--service/pixelated/adapter/listeners/mailbox_indexer_listener.py9
-rw-r--r--service/pixelated/bitmask_libraries/session.py13
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):