summaryrefslogtreecommitdiffstats
path: root/qtip/api/controllers/common.py
diff options
context:
space:
mode:
authorSerenaFeng <feng.xiaowei@zte.com.cn>2017-03-14 10:06:41 +0800
committerYujun Zhang <zhang.yujunz@zte.com.cn>2017-03-21 09:09:51 +0000
commit1899d336b7172809b8ff8439bec2038d83e976a0 (patch)
treeb2b3c958a48578831aede8a64665527847d40179 /qtip/api/controllers/common.py
parent695a881515c40e29fc12eb5003e0f3682bc4d64b (diff)
provide get_one_exceptions to unify get_xx process
add refactor get_metric() Change-Id: I972c77e63a654eeb286c573d75efe842b2887c1d Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn> (cherry picked from commit 9f87878becc36b19110e151e802180aa5f7fb305)
Diffstat (limited to 'qtip/api/controllers/common.py')
-rw-r--r--qtip/api/controllers/common.py19
1 files changed, 19 insertions, 0 deletions
diff --git a/qtip/api/controllers/common.py b/qtip/api/controllers/common.py
new file mode 100644
index 00000000..6cabbc7f
--- /dev/null
+++ b/qtip/api/controllers/common.py
@@ -0,0 +1,19 @@
+import httplib
+
+import connexion
+
+from qtip.base import error
+
+
+def get_one_exceptions(resource):
+ def _decorator(func):
+ def _execute(name):
+ try:
+ return func(name), httplib.OK
+ except error.NotFoundError:
+ return connexion.problem(
+ httplib.NOT_FOUND,
+ '{} Not Found'.format(resource),
+ 'Requested {} `{}` not found.'.format(resource, name))
+ return _execute
+ return _decorator