cinder.wsgi.common module¶
Utility methods for working with WSGI servers.
- class Application¶
Bases:
objectBase WSGI application wrapper. Subclasses need to implement __call__.
- classmethod factory(global_config, **local_config)¶
Used for paste app factories in paste.deploy config files.
Any local configuration (that is, values under the [app:APPNAME] section of the paste config) will be passed into the __init__ method as kwargs.
A hypothetical configuration would look like:
[app:wadl] latest_version = 1.3 paste.app_factory = cinder.api.fancy_api:Wadl.factory
which would result in a call to the Wadl class as
import cinder.api.fancy_api fancy_api.Wadl(latest_version=’1.3’)
You could of course re-implement the factory method in subclasses, but using the kwarg passing it shouldn’t be necessary.
- class Middleware(application)¶
Bases:
ApplicationBase WSGI middleware.
These classes require an application to be initialized that will be called next. By default the middleware will simply call its wrapped app, or you can override __call__ to customize its behavior.
- classmethod factory(global_config, **local_config)¶
Used for paste app factories in paste.deploy config files.
Any local configuration (that is, values under the [filter:APPNAME] section of the paste config) will be passed into the __init__ method as kwargs.
A hypothetical configuration would look like:
[filter:analytics] redis_host = 127.0.0.1 paste.filter_factory = cinder.api.analytics:Analytics.factory
which would result in a call to the Analytics class as
import cinder.api.analytics analytics.Analytics(app_from_paste, redis_host=’127.0.0.1’)
You could of course re-implement the factory method in subclasses, but using the kwarg passing it shouldn’t be necessary.
- process_request(req)¶
Called on each request.
If this returns None, the next application down the stack will be executed. If it returns a response then that response will be returned and execution will stop here.
- process_response(response)¶
Do whatever you’d like to the response.
- class Request(environ, charset=None, unicode_errors=None, decode_param_names=None, **kw)¶
Bases:
Request