summaryrefslogtreecommitdiff
path: root/service/pixelated/adapter/soledad/soledad_reader_mixin.py
diff options
context:
space:
mode:
Diffstat (limited to 'service/pixelated/adapter/soledad/soledad_reader_mixin.py')
-rw-r--r--service/pixelated/adapter/soledad/soledad_reader_mixin.py12
1 files changed, 7 insertions, 5 deletions
diff --git a/service/pixelated/adapter/soledad/soledad_reader_mixin.py b/service/pixelated/adapter/soledad/soledad_reader_mixin.py
index dab38376..631a8414 100644
--- a/service/pixelated/adapter/soledad/soledad_reader_mixin.py
+++ b/service/pixelated/adapter/soledad/soledad_reader_mixin.py
@@ -61,13 +61,15 @@ class SoledadReaderMixin(SoledadDbFacadeMixin, object):
def mail_exists(self, ident):
return self.get_flags_by_chash(ident)
+ @defer.inlineCallbacks
def mail(self, ident):
- fdoc = self.get_flags_by_chash(ident)
- hdoc = self.get_header_by_chash(ident)
- bdoc = self.get_content_by_phash(hdoc.content['body'])
- parts = self._extract_parts(hdoc.content)
+ fdoc = yield self.get_flags_by_chash(ident)
+ hdoc = yield self.get_header_by_chash(ident)
+ bdoc = yield self.get_content_by_phash(hdoc.content['body'])
+ parts = yield self._extract_parts(hdoc.content)
- return PixelatedMail.from_soledad(fdoc, hdoc, bdoc, parts=parts, soledad_querier=self)
+ mail = PixelatedMail.from_soledad(fdoc, hdoc, bdoc, parts=parts, soledad_querier=self)
+ defer.returnValue(mail)
@defer.inlineCallbacks
def mails(self, idents):