diff lxmlmiddleware/example.py @ 0:d1067d921e97

initial import of lxml middleware
author k0s <k0scist@gmail.com>
date Sun, 24 Jan 2010 12:00:39 -0500
parents
children ca1f58f5bad4
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/lxmlmiddleware/example.py	Sun Jan 24 12:00:39 2010 -0500
@@ -0,0 +1,22 @@
+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, environ, tree):
+        tree.append(etree.XML('<div><i>How are you doing?</i></div>'))        
+        return tree
+    
+class ExampleMiddleware2(LXMLMiddleware):
+    def manipulate(self, environ, 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)))
+