[ English | 한국어 (대한민국) | español | français | Esperanto | português (Brasil) | English (United Kingdom) | Indonesia | 中文 (简体, 中国) | русский | नेपाली | Deutsch ]
Horizon Exceptions¶
Exceptions raised by the Horizon code and the machinery for handling them.
- exception horizon.exceptions.AlreadyExists(name, resource_type)[source]¶
- API resources tried to create already exists. 
- exception horizon.exceptions.BadRequest[source]¶
- Generic error to replace all “BadRequest”-type API errors. 
- exception horizon.exceptions.ConfigurationError[source]¶
- Exception to be raised when invalid settings have been provided. 
- exception horizon.exceptions.Conflict[source]¶
- Generic error to replace all “Conflict”-type API errors. 
- exception horizon.exceptions.GetFileError(name, resource_type)[source]¶
- Exception to be raised when the value of get_file is not expected. - The expected values start with https:// or http://. Otherwise this exception will be raised. 
- exception horizon.exceptions.HandledException(wrapped)[source]¶
- Used internally to track exceptions that are already handled. - It is used to track exceptions that have gone through - horizon.exceptions.handle()more than once.
- exception horizon.exceptions.HorizonException[source]¶
- Base exception class for distinguishing our own exception classes. 
- class horizon.exceptions.HorizonReporterFilter[source]¶
- Error report filter that’s always active, even in DEBUG mode. 
- exception horizon.exceptions.Http302(location, message=None)[source]¶
- Exception used to redirect at the middleware level. - This error class which can be raised from within a handler to cause an early bailout and redirect at the middleware level. 
- exception horizon.exceptions.NotAuthenticated[source]¶
- Raised when a user is trying to make requests and they are not logged in. - The included - HorizonMiddlewarecatches- NotAuthenticatedand handles it gracefully by displaying an error message and redirecting the user to a login page.
- exception horizon.exceptions.NotAuthorized[source]¶
- User tries to access a resource without sufficient permissions. - Raised whenever a user attempts to access a resource which they do not have permission-based access to (such as when failing the - require_perms()decorator).- The included - HorizonMiddlewarecatches- NotAuthorizedand handles it gracefully by displaying an error message and redirecting the user to a login page.
- exception horizon.exceptions.NotAvailable[source]¶
- Exception to be raised when something is not available. 
- exception horizon.exceptions.NotFound[source]¶
- Generic error to replace all “Not Found”-type API errors. 
- exception horizon.exceptions.RecoverableError[source]¶
- Generic error to replace any “Recoverable”-type API errors. 
- exception horizon.exceptions.ServiceCatalogException(service_name)[source]¶
- A requested service is not available in the - ServiceCatalog.- ServiceCatalogis fetched from Keystone.
- exception horizon.exceptions.WorkflowError[source]¶
- Exception to be raised when something goes wrong in a workflow. 
- exception horizon.exceptions.WorkflowValidationError[source]¶
- Exception raised during workflow validation. - It is raised if required data is missing, or existing data is not valid. 
- horizon.exceptions.handle(request, message=None, redirect=None, ignore=False, escalate=False, log_level=None, force_log=None, details=None)[source]¶
- Centralized error handling for Horizon. - Because Horizon consumes so many different APIs with completely different - Exceptiontypes, it’s necessary to have a centralized place for handling exceptions which may be raised.- Exceptions are roughly divided into 3 types: - UNAUTHORIZED: Errors resulting from authentication or authorization problems. These result in being logged out and sent to the login screen.
- NOT_FOUND: Errors resulting from objects which could not be located via the API. These generally result in a user-facing error message, but are otherwise returned to the normal code flow. Optionally a redirect value may be passed to the error handler so users are returned to a different view than the one requested in addition to the error message.
- RECOVERABLE: Generic API errors which generate a user-facing message but drop directly back to the regular code flow.
 - All other exceptions bubble the stack as normal unless the - ignoreargument is passed in as- True, in which case only unrecognized errors are bubbled.- If the exception is not re-raised, an appropriate wrapper exception class indicating the type of exception that was encountered will be returned. If details is None (default), take it from exception sys.exc_info. If details is other string, then use that string explicitly or if details is empty then suppress it. 
