import logging import json from flask import make_response from app import app from util.useremails import CannotSendEmailException from util.config.provider.baseprovider import CannotWriteConfigException from data import model logger = logging.getLogger(__name__) @app.errorhandler(model.DataModelException) def handle_dme(ex): logger.exception(ex) return make_response(json.dumps({'message': ex.message}), 400) @app.errorhandler(CannotSendEmailException) def handle_emailexception(ex): message = 'Could not send email. Please contact an administrator and report this problem.' return make_response(json.dumps({'message': message}), 400) @app.errorhandler(CannotWriteConfigException) def handle_configexception(ex): message = ('Configuration could not be written to the mounted volume. \n' + 'Please make sure the mounted volume is not read-only and restart ' + 'the setup process. \n\nIssue: %s' % ex) return make_response(json.dumps({'message': message}), 400)