Adding policy manager and a1 sdnc vth
[it/otf.git] / a1-policy-manager-vth / app / routes / errors.py
diff --git a/a1-policy-manager-vth/app/routes/errors.py b/a1-policy-manager-vth/app/routes/errors.py
new file mode 100644 (file)
index 0000000..43e1ec1
--- /dev/null
@@ -0,0 +1,33 @@
+"""\r
+Module Info:\r
+"""\r
+from flask import jsonify, current_app, Blueprint\r
+from app.helpers.error_helper import error_dic\r
+from app.errors.bad_request_exception import BadRequestException\r
+import traceback\r
+\r
+ERRORS = Blueprint('errors', __name__)\r
+\r
+@ERRORS.app_errorhandler(BadRequestException)\r
+def handle_bad_request(error):\r
+    """\r
+    Args:\r
+    Returns:\r
+    Examples:\r
+    """\r
+    current_app.logger.info(error)\r
+    response = error_dic(error, error.status_code, error.message)\r
+    print(traceback.format_exc())\r
+    return jsonify(response), error.status_code\r
+\r
+@ERRORS.app_errorhandler(Exception)\r
+def handle_error(error):\r
+    """\r
+    Args:\r
+    Returns:\r
+    Examples:\r
+    """\r
+    status_code = 500\r
+    response = error_dic(error, status_code)\r
+    print(traceback.format_exc())\r
+    return jsonify(response), status_code\r