X-Git-Url: https://git.mdrn.pl/redakcja.git/blobdiff_plain/3c5fe5b298287f92a9c6a8e485c3860db36931fd..c01328ac5559b3d335a1689599c70aca2781a892:/apps/api/response.py diff --git a/apps/api/response.py b/apps/api/response.py index 322118a0..46750158 100644 --- a/apps/api/response.py +++ b/apps/api/response.py @@ -22,8 +22,8 @@ class ResponseObject(object): elif self._mime == MIME_JSON: data = json.dumps(body, default=lambda o: repr(o) ) else: - data = u"%s\n%s" % (self.MESSAGE, unicode(self._info)) - data = data.encode('utf-8') + # data = u"%s\n%s" % (self.MESSAGE, unicode(body)) + data = unicode(body).encode('utf-8') return HttpResponse(content=data, status=self._code, \ content_type=self._mime+'; charset=utf-8' ) @@ -49,6 +49,7 @@ class RequestAccepted(ResponseObject): def django_response(self, ticket_status, ticket_uri): return ResponseObject.django_response(self, { + 'result': 'accepted', 'status': ticket_status, 'refer_to': ticket_uri }) @@ -60,7 +61,6 @@ class SuccessNoContent(ResponseObject): def django_response(self): return ResponseObject.django_response(self, body=None) - # # Client errors # @@ -74,10 +74,7 @@ class AccessDenied(ResponseObject): def __init__(self, **kwargs): ResponseObject.__init__(self, 403, **kwargs) - - def django_response(self, reason): - return ResponseObject.django_response(self, \ - body={'reason': reason}) + class EntityNotFound(ResponseObject): @@ -96,24 +93,15 @@ class EntityConflict(ResponseObject): ResponseObject.__init__(self, 409, **kwargs) -def validate_form(formclass, source='GET'): - from functools import wraps - - def decorator(func): - @wraps(func) - def decorated(self, request, *args, **kwargs): - form = formclass(getattr(request, source), request.FILES) - - if not form.is_valid(): - errorlist = [{'field': k, 'errors': e} for k,e in form.errors] - return BadRequest().django_response(errorlist) - - return func(self, request, form, *args, **kwargs) - return decorated - return decorator - - +# +# Server side errors +# +class InternalError(ResponseObject): - + def __init__(self, **kwargs): + ResponseObject.__init__(self, 500, **kwargs) +class NotImplemented(ResponseObject): + def __init__(self, **kwargs): + ResponseObject.__init__(self, 501, **kwargs) \ No newline at end of file