diff taginthemiddle/example.py @ 3:c2bb8f873aee

make a useful(?) example factory
author Jeff Hammel <jhammel@mozilla.com>
date Wed, 05 May 2010 22:05:16 -0700
parents 1c5cbbde4299
children bf4c763b0313
line wrap: on
line diff
--- a/taginthemiddle/example.py	Tue May 04 19:15:21 2010 -0700
+++ b/taginthemiddle/example.py	Wed May 05 22:05:16 2010 -0700
@@ -1,31 +1,16 @@
-import os
-
-from dispatcher import Dispatcher
+from dispatcher import Tagger
 from paste.httpexceptions import HTTPExceptionHandler
 from paste.urlparser import StaticURLParser
 from pkg_resources import resource_filename
 
-class PassthroughFileserver(object):
-    """serve files if they exist"""
-
-    def __init__(self, app, directory):
-        self.app = app
-        self.directory = directory
-        self.fileserver = StaticURLParser(self.directory)
-
-    def __call__(self, environ, start_response):
-        path = environ['PATH_INFO'].strip('/')
-        if path and os.path.exists(os.path.join(self.directory, path)):
-            return self.fileserver(environ, start_response)
-        return self.app(environ, start_response)
-
 def factory(global_conf, **app_conf):
-    """create a webob view and wrap it in middleware"""
+    """create an example view and wrap it in tagging middleware"""
 
     keystr = 'TagInTheMiddle.'
     args = dict([(key.split(keystr, 1)[-1], value)
                  for key, value in app_conf.items()
                  if key.startswith(keystr) ])
-    app = Dispatcher(**args)
-    return HTTPExceptionHandler(PassthroughFileserver(app, resource_filename(__name__, 'static')))
+    app = StaticURLParser(app_conf['directory'])
+    tagger = Tagger(app, **args)
+    return HTTPExceptionHandler(tagger)