From 54a6db0a83f81bb4aa8167e6e9c38293fa13d094 Mon Sep 17 00:00:00 2001 From: Zhenguo Niu Date: Tue, 11 Aug 2015 18:53:10 +0800 Subject: [PATCH] Add mistral APIException as a Recoverable Exception currently we can't handle api exceptions, so add mistral api exception to Recoverable list Change-Id: I7afeb0b1c900b9fb1854a9eebc768acf0a9c4c89 Closes-Bug: #1483653 --- _50_mistral.py.example | 9 ++++++++- mistraldashboard/exceptions.py | 20 ++++++++++++++++++++ 2 files changed, 28 insertions(+), 1 deletion(-) create mode 100644 mistraldashboard/exceptions.py diff --git a/_50_mistral.py.example b/_50_mistral.py.example index f99a3ca..2eba392 100644 --- a/_50_mistral.py.example +++ b/_50_mistral.py.example @@ -1,4 +1,11 @@ +from mistraldashboard import exceptions + DASHBOARD = 'mistral' ADD_INSTALLED_APPS = ['mistraldashboard'] DEFAULT = True -ADD_EXCEPTIONS = {} + +ADD_EXCEPTIONS = { + 'recoverable': exceptions.RECOVERABLE, + 'not_found': exceptions.NOT_FOUND, + 'unauthorized': exceptions.UNAUTHORIZED, +} diff --git a/mistraldashboard/exceptions.py b/mistraldashboard/exceptions.py new file mode 100644 index 0000000..e69a365 --- /dev/null +++ b/mistraldashboard/exceptions.py @@ -0,0 +1,20 @@ +# Copyright 2015 Huawei Technologies Co., Ltd. +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. + +from mistralclient.api.base import APIException +from openstack_dashboard import exceptions + +NOT_FOUND = exceptions.NOT_FOUND +RECOVERABLE = exceptions.RECOVERABLE + (APIException,) +UNAUTHORIZED = exceptions.UNAUTHORIZED