summaryrefslogtreecommitdiff
path: root/service/pixelated/resources/mails_resource.py
diff options
context:
space:
mode:
authorDuda Dornelles <ddornell@thoughtworks.com>2015-02-18 13:40:41 -0200
committerDuda Dornelles <ddornell@thoughtworks.com>2015-02-18 13:40:49 -0200
commitdd63db87fdbb9667c1027edd700b4047b6983d1f (patch)
tree85c7a2875f535412760dc7d87c7550777f265814 /service/pixelated/resources/mails_resource.py
parent4a8217744e1d1ca60d158c3497a09b92f857a7fd (diff)
#294 - not failing service startup if smtp fails to start
Diffstat (limited to 'service/pixelated/resources/mails_resource.py')
-rw-r--r--service/pixelated/resources/mails_resource.py6
1 files changed, 5 insertions, 1 deletions
diff --git a/service/pixelated/resources/mails_resource.py b/service/pixelated/resources/mails_resource.py
index f387076b..c057031a 100644
--- a/service/pixelated/resources/mails_resource.py
+++ b/service/pixelated/resources/mails_resource.py
@@ -1,4 +1,5 @@
import json
+from pixelated.adapter.services.mail_sender import SMTPDownException
from pixelated.adapter.model.mail import InputMail
from pixelated.resources import respond_json, respond_json_deferred
from twisted.web.resource import Resource
@@ -95,7 +96,10 @@ class MailsResource(Resource):
respond_json_deferred(data, request)
def onError(error):
- respond_json_deferred({'message': str(error)}, request, status_code=422)
+ if isinstance(error.value, SMTPDownException):
+ respond_json_deferred({'message': str(error.value)}, request, status_code=503)
+ else:
+ respond_json_deferred({'message': str(error)}, request, status_code=422)
deferred.addCallback(onSuccess)
deferred.addErrback(onError)