Mercurial > hg > decoupage
comparison decoupage/decoupage.py @ 2:041958c8c8f2
use paste.fileapp as the fileserver
author | k0s <k0scist@gmail.com> |
---|---|
date | Tue, 27 Oct 2009 15:37:00 -0400 |
parents | fa2005f769eb |
children |
comparison
equal
deleted
inserted
replaced
1:93ab6d1968bd | 2:041958c8c8f2 |
---|---|
5 import os | 5 import os |
6 | 6 |
7 from genshi.builder import Markup | 7 from genshi.builder import Markup |
8 from genshi.template import TemplateLoader | 8 from genshi.template import TemplateLoader |
9 from martini.config import ConfigMunger | 9 from martini.config import ConfigMunger |
10 from paste.urlparser import StaticURLParser | 10 from paste.fileapp import FileApp |
11 from pkg_resources import resource_filename | 11 from pkg_resources import resource_filename |
12 from pkg_resources import iter_entry_points | 12 from pkg_resources import iter_entry_points |
13 from webob import Request, Response, exc | 13 from webob import Request, Response, exc |
14 | 14 |
15 class Decoupage(object): | 15 class Decoupage(object): |
37 assert os.path.isdir(self.directory) | 37 assert os.path.isdir(self.directory) |
38 self.template_directories = self.template_directories.split() # no spaces in directory names, for now | 38 self.template_directories = self.template_directories.split() # no spaces in directory names, for now |
39 assert sum([os.path.isdir(directory) for directory in self.template_directories]) == len(self.template_directories) | 39 assert sum([os.path.isdir(directory) for directory in self.template_directories]) == len(self.template_directories) |
40 | 40 |
41 # static file server | 41 # static file server |
42 self.fileserver = StaticURLParser(self.directory) | 42 self.fileserver = FileApp |
43 | 43 |
44 # pluggable index data formatters | 44 # pluggable index data formatters |
45 self.formatters = {} | 45 self.formatters = {} |
46 for formatter in iter_entry_points('decoupage.formatters'): | 46 for formatter in iter_entry_points('decoupage.formatters'): |
47 try: | 47 try: |
69 raise exc.HTTPMovedPermanently(add_slash=True) | 69 raise exc.HTTPMovedPermanently(add_slash=True) |
70 | 70 |
71 res = self.get(request) | 71 res = self.get(request) |
72 return res(environ, start_response) | 72 return res(environ, start_response) |
73 else: | 73 else: |
74 return self.fileserver(environ, start_response) | 74 fileserver = self.fileserver(path) |
75 return fileserver(environ, start_response) | |
75 else: | 76 else: |
76 raise exc.HTTPNotFound() | 77 raise exc.HTTPNotFound() |
77 | 78 |
78 def get_response(self, text, content_type='text/html'): | 79 def get_response(self, text, content_type='text/html'): |
79 """construct a response to a GET request""" | 80 """construct a response to a GET request""" |