view lxmlmiddleware/example.py @ 4:d781bdc77164 default tip

rm whitespace
author Jeff Hammel <k0scist@gmail.com>
date Tue, 03 Nov 2020 09:54:24 -0800
parents ca1f58f5bad4
children
line wrap: on
line source

from webob import Response
from lxml import etree
from lxmlmiddleware.middleware import LXMLMiddleware
from paste.httpexceptions import HTTPExceptionHandler

def example_app(environ, start_response):
    return Response('<html><body>Hello, world!</body></html>')(environ, start_response)

class ExampleMiddleware(LXMLMiddleware):
    def manipulate(self, request, response, tree):
        tree.append(etree.XML('<div><i>How are you doing?</i></div>'))        
        return tree
    
class ExampleMiddleware2(LXMLMiddleware):
    def manipulate(self, request, response, tree):
        tree.append(etree.XML("<div><b>I'm doing find, thank you!</b></div>"))
        return tree

def factory(global_conf, **app_conf):
    """create a webob view and wrap it in middleware"""
    return HTTPExceptionHandler(ExampleMiddleware2(ExampleMiddleware(example_app)))