blob: 1381297445f33065021750d83ba968dd9df5e334 [file] [log] [blame]
#!/usr/bin/env python
# encoding: utf-8
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you 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.
import urllib
from gstack import app
from gstack import helpers
from flask import Response
@app.errorhandler(404)
def not_found(e):
return Response('Not Found', status=404, mimetype='text/html')
@app.errorhandler(401)
def unauthorized(e):
res = {
'error': {
'errors': [
{
'domain': 'global',
'reason': 'required',
'message': 'Login Required',
'locationType': 'header',
'location': 'Authorization',
},
],
},
'code': 401,
'message': 'Login Required',
}
return helpers.create_errored_response(res, 401)
def resource_not_found(func_url):
res = {
'error': {
'errors': [
{
'domain': 'global',
'reason': 'notFound',
'message': 'The resource \'' + urllib.unquote_plus(func_url) + '\' was not found'
}
],
'code': 404,
'message': 'The resource \'' + urllib.unquote_plus(func_url) + '\' was not found'
}
}
return helpers.create_errored_response(res, 404)
def no_results_found(scope):
return ({
"warning": {
"code": "NO_RESULTS_ON_PAGE",
"message": "There are no results for scope" + scope + " on this page.",
"data": [{
"key": "scope",
"value": scope
}]
}
})