X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=api%2Futils%2Fcommon.py;h=f8b0d40ba2a55ecd1b75425f190b6c3aeb5581ff;hb=d304708efc188f4c7d5d52c1ecc1e0adf6d0dd45;hp=09cfc04d444fe1423765e240a68d80e202421a81;hpb=d3c66ab20d4a7b789eaec5933b1e18cd67e4d144;p=yardstick.git diff --git a/api/utils/common.py b/api/utils/common.py index 09cfc04d4..f8b0d40ba 100644 --- a/api/utils/common.py +++ b/api/utils/common.py @@ -6,9 +6,12 @@ # which accompanies this distribution, and is available at # http://www.apache.org/licenses/LICENSE-2.0 ############################################################################## +from __future__ import absolute_import import collections import logging -import json + +from flask import jsonify +import six from api.utils.daemonthread import DaemonThread from yardstick.cmd.cli import YardstickCLI @@ -16,21 +19,21 @@ from yardstick.cmd.cli import YardstickCLI logger = logging.getLogger(__name__) -def translate_to_str(object): - if isinstance(object, collections.Mapping): - return {str(k): translate_to_str(v) for k, v in object.items()} - elif isinstance(object, list): - return [translate_to_str(ele) for ele in object] - elif isinstance(object, unicode): - return str(object) - return object +def translate_to_str(obj): + if isinstance(obj, collections.Mapping): + return {str(k): translate_to_str(v) for k, v in obj.items()} + elif isinstance(obj, list): + return [translate_to_str(ele) for ele in obj] + elif isinstance(obj, six.text_type): + return str(obj) + return obj def get_command_list(command_list, opts, args): command_list.append(args) - command_list.extend(('--{}'.format(k) for k in opts if 'task-args' != k)) + command_list.extend(('--{}'.format(k) for k in opts if k != 'task-args')) task_args = opts.get('task-args', '') if task_args: @@ -39,8 +42,8 @@ def get_command_list(command_list, opts, args): return command_list -def exec_command_task(command_list, task_id): # pragma: no cover - daemonthread = DaemonThread(YardstickCLI().api, (command_list, task_id)) +def exec_command_task(command_list, task_dict): # pragma: no cover + daemonthread = DaemonThread(YardstickCLI().api, (command_list, task_dict)) daemonthread.start() @@ -50,7 +53,7 @@ def error_handler(message): 'status': 'error', 'message': message } - return json.dumps(result) + return jsonify(result) def result_handler(status, data): @@ -58,7 +61,7 @@ def result_handler(status, data): 'status': status, 'result': data } - return json.dumps(result) + return jsonify(result) class Url(object):