Merge "Use oslo.middleware instead of copy-pasted"
This commit is contained in:
commit
0bbc198f79
@ -6,7 +6,6 @@ module=config.generator
|
|||||||
module=importutils
|
module=importutils
|
||||||
module=lockutils
|
module=lockutils
|
||||||
module=log
|
module=log
|
||||||
module=middleware.base
|
|
||||||
module=periodic_task
|
module=periodic_task
|
||||||
module=processutils
|
module=processutils
|
||||||
module=strutils
|
module=strutils
|
||||||
|
@ -16,6 +16,7 @@ oslo.config>=1.4.0 # Apache-2.0
|
|||||||
oslo.db>=1.0.0 # Apache-2.0
|
oslo.db>=1.0.0 # Apache-2.0
|
||||||
oslo.i18n>=1.0.0 # Apache-2.0
|
oslo.i18n>=1.0.0 # Apache-2.0
|
||||||
oslo.messaging>=1.4.0
|
oslo.messaging>=1.4.0
|
||||||
|
oslo.middleware>=0.1.0 # Apache-2.0
|
||||||
oslo.rootwrap>=1.3.0
|
oslo.rootwrap>=1.3.0
|
||||||
oslo.serialization>=1.0.0 # Apache-2.0
|
oslo.serialization>=1.0.0 # Apache-2.0
|
||||||
oslo.utils>=1.0.0 # Apache-2.0
|
oslo.utils>=1.0.0 # Apache-2.0
|
||||||
|
@ -20,10 +20,9 @@
|
|||||||
from __future__ import print_function
|
from __future__ import print_function
|
||||||
import sys
|
import sys
|
||||||
|
|
||||||
|
from oslo.middleware import base
|
||||||
import webob.dec
|
import webob.dec
|
||||||
|
|
||||||
from sahara.openstack.common.middleware import base
|
|
||||||
|
|
||||||
|
|
||||||
class LogExchange(base.Middleware):
|
class LogExchange(base.Middleware):
|
||||||
"""Helper class that returns debug information.
|
"""Helper class that returns debug information.
|
||||||
|
@ -1,56 +0,0 @@
|
|||||||
# Copyright 2011 OpenStack Foundation.
|
|
||||||
# All Rights Reserved.
|
|
||||||
#
|
|
||||||
# Licensed 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.
|
|
||||||
|
|
||||||
"""Base class(es) for WSGI Middleware."""
|
|
||||||
|
|
||||||
import webob.dec
|
|
||||||
|
|
||||||
|
|
||||||
class Middleware(object):
|
|
||||||
"""Base WSGI middleware wrapper.
|
|
||||||
|
|
||||||
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
|
|
||||||
def factory(cls, global_conf, **local_conf):
|
|
||||||
"""Factory method for paste.deploy."""
|
|
||||||
return cls
|
|
||||||
|
|
||||||
def __init__(self, application):
|
|
||||||
self.application = application
|
|
||||||
|
|
||||||
def process_request(self, 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.
|
|
||||||
"""
|
|
||||||
return None
|
|
||||||
|
|
||||||
def process_response(self, response):
|
|
||||||
"""Do whatever you'd like to the response."""
|
|
||||||
return response
|
|
||||||
|
|
||||||
@webob.dec.wsgify
|
|
||||||
def __call__(self, req):
|
|
||||||
response = self.process_request(req)
|
|
||||||
if response:
|
|
||||||
return response
|
|
||||||
response = req.get_response(self.application)
|
|
||||||
return self.process_response(response)
|
|
Loading…
Reference in New Issue
Block a user