# This Source Code Form is subject to the terms of the Mozilla Public | |
# License, v. 2.0. If a copy of the MPL was not distributed with this file, | |
# You can obtain one at http://mozilla.org/MPL/2.0/. | |
import json | |
def json_response(func): | |
""" Translates results of 'func' into a JSON response. """ | |
def wrap(*a, **kw): | |
(code, data) = func(*a, **kw) | |
json_data = json.dumps(data) | |
return (code, { 'Content-type': 'application/json', | |
'Content-Length': len(json_data) }, json_data) | |
return wrap |