qmsk.web.rewrite
authorTero Marttila <terom@paivola.fi>
Sat, 31 Jan 2015 18:49:51 +0200
changeset 114 0f5e58ffe624
parent 113 b4cb6e4313cb
child 115 d8b4acd33bc5
qmsk.web.rewrite
qmsk/web/rewrite.py
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qmsk/web/rewrite.py	Sat Jan 31 18:49:51 2015 +0200
@@ -0,0 +1,19 @@
+class RewriteMiddleware:
+    """
+        Trivial path rewrites.
+
+        rewrite: {
+            path: path
+        }
+
+        Only does exact matches.
+    """
+
+    def __init__ (self, app, rewrite):
+        self.app = app
+        self.rewrite = rewrite
+
+    def __call__ (self, environ, start_response):
+        environ['PATH_INFO'] = self.rewrite.get(environ['PATH_INFO'], environ['PATH_INFO'])
+
+        return self.app(environ, start_response)