summaryrefslogtreecommitdiff
path: root/service/pixelated/adapter/pixelated_mail.py
diff options
context:
space:
mode:
authorDuda Dornelles <ddornell@thoughtworks.com>2014-09-22 10:44:40 -0300
committerDuda Dornelles <ddornell@thoughtworks.com>2014-09-22 10:46:38 -0300
commitf8b0bc06ee661eff29f4b15f495823f1c6aca873 (patch)
tree2c84e3810db53cf5a09f5b8501bee916e1a43aa0 /service/pixelated/adapter/pixelated_mail.py
parent1c899a23a9850271da32d4ea02f10fcaf41bd4b2 (diff)
Since ident is a property in pixelated_mail, it is dangerous and weird to overwrite it so lets not do it
Diffstat (limited to 'service/pixelated/adapter/pixelated_mail.py')
-rw-r--r--service/pixelated/adapter/pixelated_mail.py12
1 files changed, 10 insertions, 2 deletions
diff --git a/service/pixelated/adapter/pixelated_mail.py b/service/pixelated/adapter/pixelated_mail.py
index 6d5a9335..29dbdaa3 100644
--- a/service/pixelated/adapter/pixelated_mail.py
+++ b/service/pixelated/adapter/pixelated_mail.py
@@ -33,6 +33,7 @@ class PixelatedMail:
self.tags = []
self.mailbox_name = None
self.uid = None
+ self._ident = None
@staticmethod
def from_leap_mail(leap_mail, tag_service=TagService.get_instance()):
@@ -40,7 +41,7 @@ class PixelatedMail:
mail.tag_service = tag_service
mail.leap_mail = leap_mail
mail.mailbox_name = leap_mail._mbox
- mail.ident = gen_pixelated_uid(leap_mail._mbox, leap_mail.getUID())
+ mail.uid = leap_mail.getUID()
mail.body = leap_mail.bdoc.content['raw']
mail.headers = mail._extract_headers()
mail.headers['date'] = PixelatedMail._get_date(mail.headers)
@@ -53,6 +54,13 @@ class PixelatedMail:
def is_recent(self):
return Status('recent') in self.status
+ @property
+ def ident(self):
+ if self.uid and self.mailbox_name:
+ return gen_pixelated_uid(self.mailbox_name, self.uid)
+ if self._ident:
+ return self._ident
+
def set_from(self, _from):
self.headers['from'] = [_from]
@@ -172,7 +180,7 @@ def from_dict(mail_dict):
mail.headers = mail_dict.get('header', {})
mail.headers['date'] = pixelated.support.date.iso_now()
mail.body = mail_dict.get('body', '')
- mail.ident = mail_dict.get('ident', None)
+ mail._ident = mail_dict.get('ident', None)
mail.tags = set(mail_dict.get('tags', []))
mail.status = set(mail_dict.get('status', []))
return mail