# HG changeset patch # User Jeff Hammel # Date 1310837926 25200 # Node ID 657e8df141878d525dc95297fb97a65c2b953cc4 # Parent 1ee374416987eb07f72b968ed165588f3a406ee7 use a better way of setting True/False values diff -r 1ee374416987 -r 657e8df14187 uploader/dispatcher.py --- a/uploader/dispatcher.py Tue Jul 12 09:18:29 2011 -0700 +++ b/uploader/dispatcher.py Sat Jul 16 10:38:46 2011 -0700 @@ -10,19 +10,28 @@ ### class level variables defaults = { 'directory': None, - 'auth': 'False', + 'auth': False, 'query_string': None, - 'subpath': 'False', + 'subpath': False, + 'display_contents': False, 'app': None} def __init__(self, **kw): + + # set defaults for key in self.defaults: setattr(self, key, kw.get(key, self.defaults[key])) assert os.path.exists(self.directory), "The base directory %s does not exist; uploader needs it!" % self.directory if self.app: - assert hasattr(self.app, '__call__') - self.auth = self.auth.lower() == 'true' - self.subpath = self.subpath.lower() == 'true' + assert hasattr(self.app, '__call__'), "app must be a callable WSGI app" + + # set True/False values + for i in ('auth', 'subpath', 'display_contents'): + attr = getattr(self, i) + if isinstance(attr, basestring): + setattr(self, i, attr.lower() == 'true') + + # choose handler based on subpath if self.subpath: self.handlers = [ SubpathGet, SubpathPost ] else: