Mercurial > hg > contenttransformer
comparison contenttransformer/app.py @ 14:7dae51af8db6
ugly f-ing hack
author | Jeff Hammel <jhammel@mozilla.com> |
---|---|
date | Wed, 30 Jun 2010 22:32:33 -0700 |
parents | 9d51954e2e68 |
children | 32a05d7bb214 |
comparison
equal
deleted
inserted
replaced
13:9d51954e2e68 | 14:7dae51af8db6 |
---|---|
17 | 17 |
18 self.transformers = transformers() | 18 self.transformers = transformers() |
19 for pattern, transformer_name in self.types: | 19 for pattern, transformer_name in self.types: |
20 if '/' in transformer_name: | 20 if '/' in transformer_name: |
21 continue | 21 continue |
22 assert transformer_name in self.transformers | 22 assert transformer_name in self.transformers, '%s not in transformers' % transformer_name |
23 | 23 |
24 def __call__(self, path): | 24 def __call__(self, path): |
25 """this should return something that is callable with (environ, start_response) to return a response; the transformer thing""" | 25 """this should return something that is callable with (environ, start_response) to return a response; the transformer thing""" |
26 filename = os.path.basename(path) | 26 filename = os.path.basename(path) |
27 for pattern, transformer_name in self.types: | 27 for pattern, transformer_name in self.types: |
31 | 31 |
32 # transform content type | 32 # transform content type |
33 # XXX hack: -> refactor | 33 # XXX hack: -> refactor |
34 if '/' in transformer_name: | 34 if '/' in transformer_name: |
35 return ContentTypeChanger(content, content_type, transformer_name) | 35 return ContentTypeChanger(content, content_type, transformer_name) |
36 | 36 return self.transformers[transformer_name](content, content_type, **self.kwargs.get(transformer_name.lower(), {})) # XXX hack around ini being retarded |
37 return self.transformers[transformer_name](content, content_type, **self.kwargs.get(transformer_name, {})) | |
38 return FileApp(path) | 37 return FileApp(path) |
39 | 38 |
40 | 39 |
41 def transformers(): | 40 def transformers(): |
42 transformers = {} # XXX could cache | 41 transformers = {} # XXX could cache |