aboutsummaryrefslogtreecommitdiffstats
path: root/api/resources/asynctask.py
diff options
context:
space:
mode:
authorchenjiankun <chenjiankun1@huawei.com>2017-07-07 03:13:36 +0000
committerchenjiankun <chenjiankun1@huawei.com>2017-07-11 09:47:30 +0000
commit0d18f9d3299480cb43e6b335180e5cbdb58505c3 (patch)
treea35aa6373a88eddb3d13f4fdb7cd3db9bad1a4ee /api/resources/asynctask.py
parent41136dafb30d0c410e92f9f7a7c19eae60f224e2 (diff)
Yardstick API architecture improvement
JIRA: YARDSTICK-710 Since we have the plan to upload api v2 and gui. We need to add put and delete method. So the architecture need to be improved. Change-Id: Ie20a79c26ef6c581897ce4e63980fa2895b162d2 Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
Diffstat (limited to 'api/resources/asynctask.py')
-rw-r--r--api/resources/asynctask.py64
1 files changed, 0 insertions, 64 deletions
diff --git a/api/resources/asynctask.py b/api/resources/asynctask.py
deleted file mode 100644
index 39b47c0ee..000000000
--- a/api/resources/asynctask.py
+++ /dev/null
@@ -1,64 +0,0 @@
-# ############################################################################
-# Copyright (c) 2017 Huawei Technologies Co.,Ltd and others.
-#
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Apache License, Version 2.0
-# which accompanies this distribution, and is available at
-# http://www.apache.org/licenses/LICENSE-2.0
-# ############################################################################
-import uuid
-import logging
-
-from api.utils.common import result_handler
-from api.database.v1.handlers import AsyncTaskHandler
-from yardstick.common import constants as consts
-
-LOG = logging.getLogger(__name__)
-LOG.setLevel(logging.DEBUG)
-
-
-def default(args):
- return _get_status(args)
-
-
-def _get_status(args):
- try:
- task_id = args['task_id']
- except KeyError:
- return result_handler(consts.API_ERROR, 'task_id must be provided')
-
- try:
- uuid.UUID(task_id)
- except ValueError:
- return result_handler(consts.API_ERROR, 'invalid task_id')
-
- asynctask_handler = AsyncTaskHandler()
- try:
- asynctask = asynctask_handler.get_task_by_taskid(task_id)
- except ValueError:
- return result_handler(consts.API_ERROR, 'invalid task_id')
-
- def _unfinished():
- return result_handler(consts.TASK_NOT_DONE, {})
-
- def _finished():
- return result_handler(consts.TASK_DONE, {})
-
- def _error():
- return result_handler(consts.TASK_FAILED, asynctask.error)
-
- status = asynctask.status
- LOG.debug('Task status is: %s', status)
-
- if status not in [consts.TASK_NOT_DONE,
- consts.TASK_DONE,
- consts.TASK_FAILED]:
- return result_handler(consts.API_ERROR, 'internal server error')
-
- switcher = {
- consts.TASK_NOT_DONE: _unfinished,
- consts.TASK_DONE: _finished,
- consts.TASK_FAILED: _error
- }
-
- return switcher.get(status)()