summaryrefslogtreecommitdiff
path: root/service/pixelated/adapter/draft_service.py
diff options
context:
space:
mode:
authorFolker Bernitt <fbernitt@thoughtworks.com>2014-10-08 18:06:28 +0200
committerFolker Bernitt <fbernitt@thoughtworks.com>2014-10-09 18:24:41 +0200
commit85264c9ab3052dd844016d3ec44cb8af43dd5869 (patch)
treed6a5cb6511039407fdef40804c5338347b71c551 /service/pixelated/adapter/draft_service.py
parentfb8782d3f66b1068153a9948a01864ee52e39b10 (diff)
Added whoosh as search engine (issue #94).
Diffstat (limited to 'service/pixelated/adapter/draft_service.py')
-rw-r--r--service/pixelated/adapter/draft_service.py19
1 files changed, 19 insertions, 0 deletions
diff --git a/service/pixelated/adapter/draft_service.py b/service/pixelated/adapter/draft_service.py
new file mode 100644
index 00000000..d9d6b12f
--- /dev/null
+++ b/service/pixelated/adapter/draft_service.py
@@ -0,0 +1,19 @@
+
+
+class DraftService(object):
+ __slots__ = '_mailboxes'
+
+ def __init__(self, mailboxes):
+ self._mailboxes = mailboxes
+
+ def create_draft(self, input_mail):
+ self._drafts().add(input_mail)
+ return input_mail
+
+ def update_draft(self, ident, input_mail):
+ new_mail = self.create_draft(input_mail)
+ self._drafts().remove(ident)
+ return new_mail
+
+ def _drafts(self):
+ return self._mailboxes.drafts()