Skip to content

Commit

Permalink
Deals with #61 (data dict names validation)
Browse files Browse the repository at this point in the history
  • Loading branch information
Dariusz Suchojad committed Jun 22, 2013
1 parent 72370b8 commit 309a60d
Showing 1 changed file with 21 additions and 17 deletions.
38 changes: 21 additions & 17 deletions code/zato-web-admin/src/zato/admin/web/views/__init__.py
Expand Up @@ -26,7 +26,7 @@

# Zato
from zato.admin.web import from_utc_to_user
from zato.common import zato_path
from zato.common import ZatoException, zato_path

logger = logging.getLogger(__name__)

Expand Down Expand Up @@ -269,23 +269,27 @@ def __call__(self, req, initial_input_dict={}, initial_return_data={}, *args, **
self.input_dict.update(input_dict)

response = self.req.zato.client.invoke(self.service_name, input_dict)
if response.ok:
return_data = {
'message': self.success_message(response.data)
}
return_data.update(initial_return_data)

return_data = {
'message': self.success_message(response.data)
}
return_data.update(initial_return_data)

for name in chain(self.SimpleIO.output_optional, self.SimpleIO.output_required):
value = getattr(response.data, name, None)
if value:
if isinstance(value, basestring):
value = value.encode('utf-8')
else:
value = str(value)

return_data[name] = value

return HttpResponse(dumps(return_data), mimetype='application/javascript')
for name in chain(self.SimpleIO.output_optional, self.SimpleIO.output_required):
value = getattr(response.data, name, None)
if value:
if isinstance(value, basestring):
value = value.encode('utf-8')
else:
value = str(value)

return_data[name] = value
return HttpResponse(dumps(return_data), mimetype='application/javascript')
else:
msg = 'response:[{}], details.response.details:[{}]'.format(response, response.details)
logger.error(msg)
raise ZatoException(msg=msg)

except Exception, e:
return HttpResponseServerError(format_exc(e))

Expand Down

0 comments on commit 309a60d

Please sign in to comment.