summaryrefslogtreecommitdiffstats
path: root/qtip/api/controllers/qpi.py
diff options
context:
space:
mode:
authorYujun Zhang <zhang.yujunz@zte.com.cn>2017-03-28 01:45:00 +0000
committerGerrit Code Review <gerrit@opnfv.org>2017-03-28 01:45:00 +0000
commit4fda4a5819fda210ed824c504d4bed1751f8f51a (patch)
tree892ca5677b8a0989a8a87ee0db99d19da11cf001 /qtip/api/controllers/qpi.py
parent686c7023613491a99c8e2ada758edb720655a6e6 (diff)
parent7d69a1eae658fae6c7437e0a8316312cb625acb5 (diff)
Merge "Add unit tests for List and get in API." into stable/danube
Diffstat (limited to 'qtip/api/controllers/qpi.py')
-rw-r--r--qtip/api/controllers/qpi.py21
1 files changed, 7 insertions, 14 deletions
diff --git a/qtip/api/controllers/qpi.py b/qtip/api/controllers/qpi.py
index 3c4dd718..af08a824 100644
--- a/qtip/api/controllers/qpi.py
+++ b/qtip/api/controllers/qpi.py
@@ -9,24 +9,17 @@
import httplib
-import connexion
-
-from qtip.base import error
+from qtip.api.controllers import common
from qtip.loader import qpi
def list_qpis():
- qpi_spec_list = list(qpi.QPISpec.list_all())
- return qpi_spec_list, httplib.OK
+ qpi_specs = list(qpi.QPISpec.list_all())
+ qpis_by_name = [q['name'] for q in qpi_specs]
+ return {'qpis': qpis_by_name}, httplib.OK
+@common.check_endpoint_for_error(resource='QPI')
def get_qpi(name):
- try:
- qpi_spec = qpi.QPISpec(name)
- return {'name': qpi_spec.name,
- 'abspath': qpi_spec.abspath,
- 'content': qpi_spec.content}, httplib.OK
- except error.NotFoundError:
- return connexion.problem(httplib.NOT_FOUND,
- 'QPI Not Found',
- 'Requested QPI Spec `' + name + '` not found.')
+ qpi_spec = qpi.QPISpec(name)
+ return qpi_spec.content