Module eoxserver.services.base

class eoxserver.services.base.BaseExceptionHandler(schemas=None)

This is the basic handler for exceptions. It allows to generate exception reports.

handleException(req, exception)

This method can be invoked in order to handle an exception and produce an exception report. It starts by logging the error to the default log. Then the appropriate XML encoder is fetched (the _getEncoder() method has to be overridden by the subclass). Finally, the exception report itself is encoded and the appropriate HTTP status code determined. The method returns a Response object containing this information.

class eoxserver.services.base.BaseRequestHandler

Base class for all EOxServer Handler Implementations.

There are two private methods that have to be overridden by child classes.

_handleException(req, exception)

Abstract method which must be overridden by child classes to provide specific exception reports. If the exception report cannot be generated in this specific handler, the exception should be re-raised. This is also the default behaviour.

The method expects an OWSRequest object req and the exception that has been raised as input. It should return a Response object containing the exception report.

_processRequest(req)

Abstract method which must be overridden to provide the specific request handling logic. Should not be invoked from external code, use the handle() method instead. It expects an OWSRequest object req as input and should return a Response object containing the response to the request. The default method does not do anything.

handle(req)

Basic request handling method which should be invoked from external code. This method invokes the _processRequest() method and returns the resulting Response object unless an exception is raised. In the latter case _handleException() is called and the appropriate response is returned.