class Resource: def __init__(self, authentication=None, permitted_methods=None, mimetype=None): if not permitted_methods: permitted_methods = ["GET"] self.permitted_methods = [m.upper() for m in permitted_methods] self.mimetype = mimetype def __call__(self, request, *args, **kwargs): try: response = self.dispatch(request, self, *args, **kwargs) log_request(request, response, 'access') return response except (HttpMethodNotAllowed, Http403): log_request(request, None, 'access') response = HttpResponseNotAllowed(self.permitted_methods) response.mimetype = self.mimetype return response except TracedServerError, e: log_request(request, None, 'access') msg = log_detailed_exception(request, e) except Exception, e: log_request(request, None, 'access') msg = log_exception(request, e)
def __call__(self, request, *args, **kwargs): try: response = self.dispatch(request, self, *args, **kwargs) log_request(request, response, 'access') return response except Http404: raise except Http403: log_request(request, None, 'access') return HttpResponseForbidden() except HttpMethodNotAllowed: log_request(request, None, 'access') response = HttpResponseNotAllowed(self.permitted_methods) response.mimetype = self.mimetype return response except TracedServerError, e: log_request(request, None, 'access') msg = log_detailed_exception(request, e)
def __call__(self, request, *args, **kwargs): try: response = self.dispatch(request, self, *args, **kwargs) log_request(request, response, 'access') return response except Http404: raise except Http403: log_request(request, None, 'access') return HttpResponseForbidden() except HttpMethodNotAllowed: log_request(request, None, 'access') response = HttpResponseNotAllowed(self.permitted_methods) response.mimetype = self.mimetype return response except TracedServerError, e: log_request(request, None, 'access') msg = log_detailed_exception(request, e)
log_detailed_exception(request, e) return HttpResponseRedirect('error?msg=%(errorMsg)s#error' % {'errorMsg': urlquote_plus(msg)}) except Exception, e: if hasattr(e, 'msg'): errorMsg = e.msg elif hasattr(e, 'message'): errorMsg = e.message else: errorMsg = _('unkwon reason') msg = _("Error creating deployment dirs: %(errorMsg)s") % {'errorMsg': errorMsg} e = TracedServerError(e, {}, request, msg) log_request(request, None, 'access') log_detailed_exception(request, e) return HttpResponseRedirect('error?msg=%(errorMsg)s#error' % {'errorMsg': urlquote_plus(msg)}) # Copy .wgt file into user temporal folder and extract file .wgt into # gadgets folder try: file_wgt = request.FILES['file'] file_wgt_path = path.join(info.TMPDIR.encode("utf8"), file_wgt.name.encode("utf8")) f = open(file_wgt_path, "wb") f.write(file_wgt.read()) f.close() # Extract file .wgt into temporal folder